Part Number Hot Search : 
AN2577 SPL860PT 20212 R2A201 ISL6422 EL5130 SMCJ22 TC123
Product Description
Full Text Search
 

To Download XCS30-4CS100I Datasheet File

  If you can't view the Datasheet, Please click here to try to view without PDF Reader .  
 
 


  Datasheet File OCR Text:
  ds060 (v1.6) september 19, 2001 www.xilinx.com 1 product specification 1-800-255-7778 ? 2001 xilinx, inc. all rights reserved. all xilinx trademarks, registered trademarks, patents, and disclaimers are as listed a t http://www.xilinx.com/legal.htm . all other trademarks and registered trademarks are the property of their respective owners. all specifications are subject to c hange without notice. introduction the spartan ? and the spartan-xl families are a high-vol- ume production fpga solution that delivers all the key requirements for asic replacement up to 40,000 gates. these requirements include high performance, on-chip ram, core solutions and prices that, in high volume, approach and in many cases are equivalent to mask pro- grammed asic devices. the spartan series is the result of more than 14 years of fpga design experience and feedback from thousands of customers. by streamlining the spartan series feature set, leveraging advanced process technologies and focusing on total cost management, the spartan series delivers the key features required by asic and other high-volume logic users while avoiding the initial cost, long development cycles and inherent risk of conventional asics. the spar- tan and spartan-xl families in the spartan series have ten members, as shown in table 1 . spartan and spartan-xl features note: the spartan series devices described in this data sheet include the 5v spartan family and the 3.3v spartan-xl family. see the separate data sheet for the 2.5v spartan-ii family.  first asic replacement fpga for high-volume production with on-chip ram  density up to 1862 logic cells or 40,000 system gates  streamlined feature set based on xc4000 architecture  system performance beyond 80 mhz  broad set of alliancecore ? and logicore ? predefined solutions available  unlimited reprogrammability  low cost  system level features - available in both 5v and 3.3v versions - on-chip selectram ? memory - fully pci compliant - full readback capability for program verification and internal node observability - dedicated high-speed carry logic - internal 3-state bus capability - eight global low-skew clock or signal networks - ieee 1149.1-compatible boundary scan logic - low cost plastic packages available in all densities - footprint compatibility in common packages  fully supported by powerful xilinx development system - foundation series: integrated, shrink-wrap software - alliance series: dozens of pc and workstation third party development systems supported - fully automatic mapping, placement and routing additional spartan-xl features  3.3v supply for low power with 5v tolerant i/os  power down input  higher performance  faster carry logic  more flexible high-speed clock network  latch capability in configurable logic blocks  input fast capture latch  optional mux or 2-input function generator on outputs  12 ma or 24 ma output drive  5v and 3.3v pci compliant  enhanced boundary scan  express mode configuration  chip scale packaging 0 spartan and spartan-xl families field programmable gate arrays ds060 (v1.6) september 19, 2001 00 product specification r table 1: spartan and spartan-xl field programmable gate arrays device logic cells max system gates typical gate range (logic and ram) (1) clb matrix total clbs no. of flip-flops max. avail. user i/o total distributed ram bits xcs05 and xcs05xl 238 5,000 2,000-5,000 10 x 10 100 360 77 3,200 xcs10 and xcs10xl 466 10,000 3,000-10,000 14 x 14 196 616 112 6,272 xcs20 and xcs20xl 950 20,000 7,000-20,000 20 x 20 400 1,120 160 12,800 xcs30 and xcs30xl 1368 30,000 10,000-30,000 24 x 24 576 1,536 192 18,432 xcs40 and xcs40xl 1862 40,000 13,000-40,000 28 x 28 784 2,016 224 25,088 notes: 1. max values of typical gate range include 20-30% of clbs used as ram.
spartan and spartan-xl families field programmable gate arrays 2 www.xilinx.com ds060 (v1.6) september 19, 2001 1-800-255-7778 product specification r general overview spartan series fpgas are implemented with a regular, flex- ible, programmable architecture of configurable logic blocks (clbs), interconnected by a powerful hierarchy of versatile routing resources (routing channels), and sur- rounded by a perimeter of programmable input/output blocks (iobs), as seen in figure 1 . they have generous routing resources to accommodate the most complex inter- connect patterns. the devices are customized by loading configuration data into internal static memory cells. re-programming is possi- ble an unlimited number of times. the values stored in these memory cells determine the logic functions and intercon- nections implemented in the fpga. the fpga can either actively read its configuration data from an external serial prom (master serial mode), or the configuration data can be written into the fpga from an external device (slave serial mode). spartan series fpgas can be used where hardware must be adapted to different user applications. fpgas are ideal for shortening design and development cycles, and also offer a cost-effective solution for production rates well beyond 50,000 systems per month. figure 1: basic fpga block diagram clb b- scan clb clb clb clb clb routing channels versaring routing channels clb clb clb clb clb clb clb clb clb clb iob iob iob iob iob iob iob iob iob iob iob iob iob iob iob iob iob iob iob iob iob iob iob iob iob iob iob iob iob iob iob iob rdbk start -up osc ds060_01_081100
spartan and spartan-xl families field programmable gate arrays ds060 (v1.6) september 19, 2001 www.xilinx.com 3 product specification 1-800-255-7778 r spartan series devices achieve high-performance, low-cost operation through the use of an advanced architecture and semiconductor technology. spartan and spartan-xl devices provide system clock rates exceeding 80 mhz and internal performance in excess of 150 mhz. in contrast to other fpga devices, the spartan series offers the most cost-effective solution while maintaining leading-edge per- formance. in addition to the conventional benefit of high vol- ume programmable logic solutions, spartan series fpgas also offer on-chip edge-triggered single-port and dual-port ram, clock enables on all flip-flops, fast carry logic, and many other features. the spartan/xl families leverage the highly successful xc4000 architecture with many of that family ? s features and benefits. technology advancements have been derived from the xc4000xla process developments. logic functional description the spartan series uses a standard fpga structure as shown in figure 1, page 2 . the fpga consists of an array of configurable logic blocks (clbs) placed in a matrix of routing channels. the input and output of signals is achieved through a set of input/output blocks (iobs) forming a ring around the clbs and routing channels.  clbs provide the functional elements for implementing the user ? s logic.  iobs provide the interface between the package pins and internal signal lines.  routing channels provide paths to interconnect the inputs and outputs of the clbs and iobs. the functionality of each circuit block is customized during configuration by programming internal static memory cells. the values stored in these memory cells determine the logic functions and interconnections implemented in the fpga. configurable logic blocks (clbs) the clbs are used to implement most of the logic in an fpga. the principal clb elements are shown in the simpli- fied block diagram in figure 2 . there are three look-up tables (lut) which are used as logic function generators, two flip-flops and two groups of signal steering multiplexers. there are also some more advanced features provided by the clb which will be covered in the advanced features description , page 13 . function generators two 16 x 1 memory look-up tables (f-lut and g-lut) are used to implement 4-input function generators, each offer- ing unrestricted logic implementation of any boolean func- tion of up to four independent input signals (f1 to f4 or g1 to g4). using memory look-up tables the propagation delay is independent of the function implemented. a third 3-input function generator (h-lut) can implement any boolean function of its three inputs. two of these inputs are controlled by programmable multiplexers (see box "a" of figure 2 ). these inputs can come from the f-lut or g-lut outputs or from clb inputs. the third input always comes from a clb input. the clb can, therefore, implement cer- tain functions of up to nine inputs, like parity checking. the three luts in the clb can also be combined to do any arbi- trarily defined boolean function of five inputs.
spartan and spartan-xl families field programmable gate arrays 4 www.xilinx.com ds060 (v1.6) september 19, 2001 1-800-255-7778 product specification r a clb can implement any of the following functions:  any function of up to four variables, plus any second function of up to four unrelated variables, plus any third function of up to three unrelated variables note: when three separate functions are generated, one of the function outputs must be captured in a flip-flop internal to the clb. only two unregistered function generator outputs are available from the clb.  any single function of five variables  any function of four variables together with some functions of six variables  some functions of up to nine variables. implementing wide functions in a single block reduces both the number of blocks required and the delay in the signal path, achieving both increased capacity and speed. the versatility of the clb function generators significantly improves system speed. in addition, the design-software tools can deal with each function generator independently. this flexibility improves cell usage. flip-flops each clb contains two flip-flops that can be used to regis- ter (store) the function generator outputs. the flip-flops and function generators can also be used independently (see figure 2 ). the clb input din can be used as a direct input to either of the two flip-flops. h1 can also drive either flip-flop via the h-lut with a slight additional delay. the two flip-flops have common clock (ck), clock enable (ec) and set/reset (sr) inputs. internally both flip-flops are also controlled by a global initialization signal (gsr) which is described in detail in global signals: gsr and gts , page 20 . latches (spartan-xl only) the spartan-xl clb storage elements can also be config- ured as latches. the two latches have common clock (k) and clock enable (ec) inputs. functionality of the storage element is described in ta bl e 2 . figure 2: spartan/xl simplified clb logic diagram (some features not shown) g4 g h1 f g4 g3 g3 g2 g2 g1 dyq y x sr ck ec q g1 sr h1 din g h logic function of g1-g4 logic function of f-g-h1 multiplexer controlled by configuration program g-lut f4 f4 f3 f3 f2 f2 f1 f1 k ec g logic function of f1-f4 f-lut h-lut a b dxq sr ck ec q ds060_02_0506 01
spartan and spartan-xl families field programmable gate arrays ds060 (v1.6) september 19, 2001 www.xilinx.com 5 product specification 1-800-255-7778 r . clock input each flip-flop can be triggered on either the rising or falling clock edge. the clb clock line is shared by both flip-flops. however, the clock is individually invertible for each flip-flop (see ck path in figure 3 ). any inverter placed on the clock line in the design is automatically absorbed into the clb. clock enable the clock enable line (ec) is active high. the ec line is shared by both flip-flops in a clb. if either one is left discon- nected, the clock enable for that flip-flop defaults to the active state. ec is not invertible within the clb. the clock enable is synchronous to the clock and must satisfy the setup and hold timing specified for the device. set/reset the set/reset line (sr) is an asynchronous active high con- trol of the flip-flop. sr can be configured as either set or reset at each flip-flop. this configuration option determines the state in which each flip-flop becomes operational after configuration. it also determines the effect of a gsr pulse during normal operation, and the effect of a pulse on the sr line of the clb. the sr line is shared by both flip-flops. if sr is not specified for a flip-flop the set/reset for that flip-flop defaults to the inactive state. sr is not invertible within the clb. clb signal flow control in addition to the h-lut input control multiplexers (shown in box "a" of figure 2, page 4 ) there are signal flow control multiplexers (shown in box "b" of figure 2 ) which select the signals which drive the flip-flop inputs and the combinatorial clb outputs (x and y). each flip-flop input is driven from a 4:1 multiplexer which selects among the three lut outputs and din as the data source. each combinatorial output is driven from a 2:1 multiplexer which selects between two of the lut outputs. the x output can be driven from the f-lut or h-lut, the y output from g-lut or h-lut. control signals there are four signal control multiplexers on the input of the clb. these multiplexers allow the internal clb control sig- nals (h1, din, sr, and ec in figure 2 and figure 4 ) to be driven from any of the four general control inputs (c1-c4 in figure 4 ) into the clb. any of these inputs can drive any of the four internal control signals. table 2: clb storage element functionality mode ck ec sr d q power-up or gsr xxxxsr flip-flop operation xx1xsr 1* 0* d d 0x0*xq latch operation (spartan-xl) 11*0*xq 01*0*dd both x 0 0* x q legend: xdon ? t care rising edge (clock not inverted). sr set or reset value. reset is default. 0* input is low or unconnected (default value) 1* input is high or unconnected (default value) figure 3: clb flip-flop functional block diagram multiplexer controlled by configuration program dq q d gnd gsr vcc ck ec sr sd rd ds060_03_041901
spartan and spartan-xl families field programmable gate arrays 6 www.xilinx.com ds060 (v1.6) september 19, 2001 1-800-255-7778 product specification r the four internal control signals are:  ec: enable clock  sr: asynchronous set/reset or h function generator input 0  din: direct in or h function generator input 2  h1: h function generator input 1. input/output blocks (iobs) user-configurable input/output blocks (iobs) provide the interface between external package pins and the internal logic. each iob controls one package pin and can be con- figured for input, output, or bidirectional signals. figure 6 shows a simplified functional block diagram of the spar- tan/xl iob. iob input signal path the input signal to the iob can be configured to either go directly to the routing channels (via i1 and i2 in figure 6 ) or to the input register. the input register can be programmed as either an edge-triggered flip-flop or a level-sensitive latch. the functionality of this register is shown in ta ble 3 , and a simplified block diagram of the register can be seen in figure 5 . figure 4: clb control signal interface multiplexer controlled by configuration program c1 din h1 sr ec c2 c3 c4 ds060_04_081100 figure 5: iob flip-flop/latch functional block diagram ta ble 3 : input register functionality mode ck ec d q power-up or gsr xxxsr flip-flop 1* d d 0xxq latch 1 1* x q 01*dd both x 0 x q legend: xdon ? t care. rising edge (clock not inverted). sr set or reset value. reset is default. 0* input is low or unconnected (default value) 1* input is high or unconnected (default value) multiplexer controlled by configuration program dq q d gsr vcc ck ec sd rd ds060_05_041901
spartan and spartan-xl families field programmable gate arrays ds060 (v1.6) september 19, 2001 www.xilinx.com 7 product specification 1-800-255-7778 r the register choice is made by placing the appropriate library symbol. for example, ifd is the basic input flip-flop (rising edge triggered), and ild is the basic input latch (transparent-high). variations with inverted clocks are also available. the clock signal inverter is also shown in figure 5 on the ck line. the spartan iob data input path has a one-tap delay ele- ment: either the delay is inserted (default), or it is not. the spartan-xl iob data input path has a two-tap delay ele- ment, with choices of a full delay, a partial delay, or no delay. the added delay guarantees a zero hold time with respect to clocks routed through the global clock buffers. (see glo- bal nets and buffers , page 12 for a description of the glo- bal clock buffers in the spartan/xl families.) for a shorter input register setup time, with positive hold-time, attach a nodelay attribute or property to the flip-flop.the output of the input register goes to the routing channels (via i1 and i2 in figure 6 ). the i1 and i2 signals that exit the iob can each carry either the direct or registered input signal. the 5v spartan input buffers can be globally configured for either ttl (1.2v) or cmos (vcc/2) thresholds, using an option in the bitstream generation software. the spartan output levels are also configurable; the two global adjust- ments of input threshold and output level are independent. the inputs of spartan devices can be driven by the outputs of any 3.3v device, if the spartan inputs are in ttl mode. input and output thresholds are ttl on all configuration pins until the configuration has been loaded into the device and specifies how they are to be used. spartan-xl inputs are ttl compatible and 3.3v cmos compatible. supported sources for spartan/xl device inputs are shown in ta ble 4 . spartan-xl i/os are fully 5v tolerant even though the v cc is 3.3v. this allows 5v signals to directly connect to the spar- tan-xl inputs without damage, as shown in ta bl e 4 . in addi- tion, the 3.3v v cc can be applied before or after 5v signals are applied to the i/os. this makes the spartan-xl devices immune to power supply sequencing problems. figure 6: simplified spartan/xl iob block diagram multiplexer controlled by configuration program t o ok q gts d ck ec i1 i2 ik ec q d ck ec delay package pad programmable pull-up/ pull-down network output driver programmable slew rate programmable ttl/cmos drive (spartan only) input buffer ds060_06_041901
spartan and spartan-xl families field programmable gate arrays 8 www.xilinx.com ds060 (v1.6) september 19, 2001 1-800-255-7778 product specification r spartan-xl v cc clamping spartan-xl fpgas have an optional clamping diode con- nected from each i/o to v cc . when enabled they clamp ringing transients back to the 3.3v supply rail. this clamping action is required in 3.3v pci applications. v cc clamping is a global option affecting all i/o pins. spartan-xl devices are fully 5v ttl i/o compatible if v cc clamping is not enabled. with v cc clamping enabled, the spartan-xl devices will begin to clamp input voltages to one diode voltage drop above v cc . if enabled, ttl i/o com- patibility is maintained but full 5v i/o tolerance is sacrificed. the user may select either 5v tolerance (default) or 3.3v pci compatibility. in both cases negative voltage is clamped to one diode voltage drop below ground. spartan-xl devices are compatible with ttl, lvttl, pci 3v, pci 5v and lvcmos signalling. the various standards are illustrated in ta bl e 5 . additional fast capture input latch (spartan-xl only) the spartan-xl iob has an additional optional latch on the input. this latch is clocked by the clock used for the output flip-flop rather than the input clock. therefore, two different clocks can be used to clock the two input storage elements. this additional latch allows the fast capture of input data, which is then synchronized to the internal clock by the iob flip-flop or latch. to place the fast capture latch in a design, use one of the special library symbols, ilffx or ilflx. ilffx is a trans- parent-low fast capture latch followed by an active high input flip-flop. ilflx is a transparent low fast capture latch followed by a transparent high input latch. any of the clock inputs can be inverted before driving the library element, and the inverter is absorbed into the iob. iob output signal path output signals can be optionally inverted within the iob, and can pass directly to the output buffer or be stored in an edge-triggered flip-flop and then to the output buffer. the functionality of this flip-flop is shown in table 6 . table 4: supported sources for spartan/xl inputs source spartan inputs spartan-xl inputs 5v, ttl 5v, cmos 3.3v cmos any device, v cc = 3.3v, cmos outputs unreli- able data spartan family, v cc = 5v, ttl outputs ? any device, v cc = 5v, ttl outputs (v oh 3.7v) ? any device, v cc = 5v, cmos outputs ?? (default mode) table 5: i/o standards supported by spartan-xl fpgas signaling standard vcc clamping output drive v ih max v ih min v il max v oh min v ol max ttl not allowed 12/24 ma 5.5 2.0 0.8 2.4 0.4 lvttl ok 12/24 ma 3.6 2.0 0.8 2.4 0.4 pci5v not allowed 24 ma 5.5 2.0 0.8 2.4 0.4 pci3v required 12 ma 3.6 50% of v cc 30% of v cc 90% of v cc 10% of v cc lvcmos 3v ok 12/24 ma 3.6 50% of v cc 30% of v cc 90% of v cc 10% of v cc ta ble 6 : output flip-flop functionality mode clock clock enable t d q power-up or gsr xx0*xsr flip-flop x 0 0* x q 1* 0* d d xx1xz 0x0*xq legend: xdon ? t care rising edge (clock not inverted). sr set or reset value. reset is default. 0* input is low or unconnected (default value) 1* input is high or unconnected (default value) z 3-state
spartan and spartan-xl families field programmable gate arrays ds060 (v1.6) september 19, 2001 www.xilinx.com 9 product specification 1-800-255-7778 r output multiplexer/2-input function generator (spartan-xl only) the output path in the spartan-xl iob contains an addi- tional multiplexer not available in the spartan iob. the mul- tiplexer can also be configured as a 2-input function generator, implementing a pass gate, and gate, or gate, or xor gate, with 0, 1, or 2 inverted inputs. when configured as a multiplexer, this feature allows two output signals to time-share the same output pad, effec- tively doubling the number of device outputs without requir- ing a larger, more expensive package. the select input is the pin used for the output flip-flop clock, ok. when the multiplexer is configured as a 2-input function generator, logic can be implemented within the iob itself. combined with a global buffer, this arrangement allows very high-speed gating of a single signal. for example, a wide decoder can be implemented in clbs, and its output gated with a read or write strobe driven by a global buffer. the user can specify that the iob function generator be used by placing special library symbols beginning with the letter "o." for example, a 2-input and gate in the iob func- tion generator is called oand2. use the symbol input pin labeled "f" for the signal on the critical path. this signal is placed on the ok pin ? the iob input with the shortest delay to the function generator. two examples are shown in figure 7 . output buffer an active high 3-state signal can be used to place the out- put buffer in a high-impedance state, implementing 3-state outputs or bidirectional i/o. under configuration control, the output (o) and output 3-state (t) signals can be inverted. the polarity of these signals is independently configured for each iob (see figure 6, page 7 ). an output can be config- ured as open-drain (open-collector) by tying the 3-state pin (t) to the output signal, and the input pin (i) to ground. by default, a 5v spartan device output buffer pull-up struc- ture is configured as a ttl-like totem-pole. the high driver is an n-channel pull-up transistor, pulling to a voltage one transistor threshold below v cc . alternatively, the outputs can be globally configured as cmos drivers, with additional p-channel pull-up transistors pulling to v cc . this option, applied using the bitstream generation software, applies to all outputs on the device. it is not individually programma- ble. all spartan-xl device outputs are configured as cmos drivers, therefore driving rail-to-rail. the spartan-xl outputs are individually programmable for 12 ma or 24 ma output drive. any 5v spartan device with its outputs configured in ttl mode can drive the inputs of any typical 3.3v device. sup- ported destinations for spartan/xl device outputs are shown in ta ble 7 . three-state register (spartan-xl only) spartan-xl devices incorporate an optional register control- ling the three-state enable in the iobs. the use of the three-state control register can significantly improve output enable and disable time. output slew rate the slew rate of each output buffer is, by default, reduced, to minimize power bus transients when switching non-criti- cal signals. for critical signals, attach a fast attribute or property to the output buffer or flip-flop. spartan/xl devices have a feature called "soft start-up," designed to reduce ground bounce when all outputs are turned on simultaneously at the end of configuration. when the configuration process is finished and the device starts up, the first activation of the outputs is automatically slew-rate limited. immediately following the initial activation of the i/o, the slew rate of the individual outputs is deter- mined by the individual configuration option for each iob. pull-up and pull-down network programmable pull-up and pull-down resistors are used for tying unused pins to v cc or ground to minimize power con- sumption and reduce noise sensitivity. the configurable pull-up resistor is a p-channel transistor that pulls to v cc . the configurable pull-down resistor is an n-channel transis- tor that pulls to ground. the value of these resistors is typi- cally 20 k ? ? 100 k ? ( see "spartan dc characteristics figure 7: and and mux symbols in spartan-xl iob ds060_07_081100 oand2 omux2 f d0 d1 o s0
spartan and spartan-xl families field programmable gate arrays 10 www.xilinx.com ds060 (v1.6) september 19, 2001 1-800-255-7778 product specification r over operating conditions" on page 43. ). this high value makes them unsuitable as wired-and pull-up resistors. after configuration, voltage levels of unused pads, bonded or unbonded, must be valid logic levels, to reduce noise sensitivity and avoid excess current. therefore, by default, unused pads are configured with the internal pull-up resistor active. alternatively, they can be individually configured with the pull-down resistor, or as a driven output, or to be driven by an external source. to activate the internal pull-up, attach the pullup library component to the net attached to the pad. to activate the internal pull-down, attach the pull- down library component to the net attached to the pad. set/reset as with the clb registers, the gsr signal can be used to set or clear the input and output registers, depending on the value of the init attribute or property. the two flip-flops can be individually configured to set or clear on reset and after configuration. other than the global gsr net, no user-con- trolled set/reset signal is available to the i/o flip-flops ( figure 5 ). the choice of set or reset applies to both the ini- tial state of the flip-flop and the response to the gsr pulse. independent clocks separate clock signals are provided for the input (ik) and output (ok) flip-flops. the clock can be independently inverted for each flip-flop within the iob, generating either falling-edge or rising-edge triggered flip-flops. the clock inputs for each iob are independent. common clock enables the input and output flip-flops in each iob have a common clock enable input (see ec signal in figure 5 ), which through configuration, can be activated individually for the input or output flip-flop, or both. this clock enable operates exactly like the ec signal on the spartan/xl clb. it cannot be inverted within the iob. routing channel description all internal routing channels are composed of metal seg- ments with programmable switching points and switching matrices to implement the desired routing. a structured, hierarchical matrix of routing channels is provided to achieve efficient automated routing. this section describes the routing channels available in spartan/xl devices. figure 8 shows a general block dia- gram of the clb routing channels. the implementation soft- ware automatically assigns the appropriate resources based on the density and timing requirements of the design. the following description of the routing channels is for infor- mation only and is simplified with some minor details omit- ted. for an exact interconnect description the designer should open a design in the fpga editor and review the actual connections in this tool. the routing channels will be discussed as follows;  clb routing channels which run along each row and column of the clb array.  iob routing channels which form a ring (called a versaring) around the outside of the clb array. it connects the i/o with the clb routing channels.  global routing consists of dedicated networks primarily designed to distribute clocks throughout the device with minimum delay and skew. global routing can also be used for other high-fanout signals. clb routing channels the routing channels around the clb are derived from three types of interconnects; single-length, double-length, and longlines. at the intersection of each vertical and hori- zontal routing channel is a signal steering matrix called a programmable switch matrix (psm). figure 8 shows the basic routing channel configuration showing single-length lines, double-length lines and longlines as well as the clbs and psms. the clb to routing channel interface is shown as well as how the psms interface at the channel intersec- tions. table 7: supported destinations for spartan/xl outputs destination spartan-xl outputs spartan outputs 3.3v, cmos 5v, ttl 5v, cmos any device, v cc = 3.3v, cmos-threshold inputs ? some (1) any device, v cc = 5v, ttl-threshold inputs ?? any device, v cc = 5v, cmos-threshold inputs unreliable data notes: 1. only if destination device has 5v tolerant inputs.
spartan and spartan-xl families field programmable gate arrays ds060 (v1.6) september 19, 2001 www.xilinx.com 11 product specification 1-800-255-7778 r clb interface a block diagram of the clb interface signals is shown in figure 9 . the input signals to the clb are distributed evenly on all four sides providing maximum routing flexibility. in general, the entire architecture is symmetrical and regular. it is well suited to established placement and routing algo- rithms. inputs, outputs, and function generators can freely swap positions within a clb to avoid routing congestion during the placement and routing operation. the exceptions are the clock (k) input and cin/cout signals. the k input is routed to dedicated global vertical lines as well as four single-length lines and is on the left side of the clb. the cin/cout signals are routed through dedicated intercon- nects which do not interfere with the general routing struc- ture. the output signals from the clb are available to drive both vertical and horizontal channels. programmable switch matrices the horizontal and vertical single- and double-length lines intersect at a box called a programmable switch matrix (psm). each psm consists of programmable pass transis- tors used to establish connections between the lines (see figure 10 ). for example, a single-length signal entering on the right side of the switch matrix can be routed to a single-length line on the top, left, or bottom sides, or any combination thereof, if multiple branches are required. similarly, a dou- ble-length signal can be routed to a double-length line on any or all of the other three edges of the programmable switch matrix. single-length lines single-length lines provide the greatest interconnect flexibil- ity and offer fast routing between adjacent blocks. there are eight vertical and eight horizontal single-length lines associ- ated with each clb. these lines connect the switching matrices that are located in every row and column of clbs. single-length lines are connected by way of the program- mable switch matrices, as shown in figure 10 . routing con- nectivity is shown in figure 8 . single-length lines incur a delay whenever they go through a psm. therefore, they are not suitable for routing signals for long distances. they are normally used to conduct sig- nals within a localized area and to provide the branching for nets with fanout greater than one. figure 8: spartan/xl clb routing channels and interface block diagram psm clb clb psm psm psm psm psm 8 singles 2 doubles 3 longs 3 longs 2 doubles 2 doubles 3 longs 3 longs 2 doubles 8 singles ds060_09_041901 figure 9: clb interconnect signals cin y g3 c3 f3 cout g1 c1 k f1 x xq f4 c4 g4 yq f2 c2 g2 clb ds060_08_081100 rev 1.1
spartan and spartan-xl families field programmable gate arrays 12 www.xilinx.com ds060 (v1.6) september 19, 2001 1-800-255-7778 product specification r double-length lines the double-length lines consist of a grid of metal segments, each twice as long as the single-length lines: they run past two clbs before entering a psm. double-length lines are grouped in pairs with the psms staggered, so that each line goes through a psm at every other row or column of clbs (see figure 8 ). there are four vertical and four horizontal double-length lines associated with each clb. these lines provide faster signal routing over intermediate distances, while retaining routing flexibility. longlines longlines form a grid of metal interconnect segments that run the entire length or width of the array. longlines are intended for high fan-out, time-critical signal nets, or nets that are distributed over long distances. each spartan/xl device longline has a programmable split- ter switch at its center. this switch can separate the line into two independent routing channels, each running half the width or height of the array. routing connectivity of the longlines is shown in figure 8 . the longlines also interface to some 3-state buffers which is described later in 3-state long line drivers , page 19 . i/o routing spartan/xl devices have additional routing around the iob ring. this routing is called a versaring. the versaring facil- itates pin-swapping and redesign without affecting board layout. included are eight double-length lines, and four lon- glines. global nets and buffers the spartan/xl devices have dedicated global networks. these networks are designed to distribute clocks and other high fanout control signals throughout the devices with min- imal skew. four vertical longlines in each clb column are driven exclu- sively by special global buffers. these longlines are in addi- tion to the vertical longlines used for standard interconnect. in the 5v spartan devices, the four global lines can be driven by either of two types of global buffers; primary glo- bal buffers (bufgp) or secondary global buffers (bufgs). each of these lines can be accessed by one particular pri- mary global buffer, or by any of the secondary global buff- ers, as shown in figure 11 . in the 3v spartan-xl devices, the four global lines can be driven by any of the eight global low-skew buffers (bufgls). the clock pins of every clb and iob can also be sourced from local interconnect. figure 10: programmable switch matrix six pass transistors per switch matrix interconnect point ds060_10_081100
spartan and spartan-xl families field programmable gate arrays ds060 (v1.6) september 19, 2001 www.xilinx.com 13 product specification 1-800-255-7778 r the four primary global buffers offer the shortest delay and negligible skew. four secondary global buffers have slightly longer delay and slightly more skew due to poten- tially heavier loading, but offer greater flexibility when used to drive non-clock clb inputs. the eight global low-skew buffers in the spartan-xl devices combine short delay, neg- ligible skew, and flexibility. the primary global buffers must be driven by the semi-ded- icated pads (pgck1-4). the secondary global buffers can be sourced by either semi-dedicated pads (sgck1-4) or internal nets. each corner of the device has one primary buffer and one secondary buffer. the spartan-xl family has eight global low-skew buffers, two in each corner. all can be sourced by either semi-dedicated pads (gck1-8) or internal nets. using the library symbol called bufg results in the software choosing the appropriate clock buffer, based on the timing requirements of the design. a global buffer should be spec- ified for all timing-sensitive global signal distribution. to use a global buffer, place a bufgp (primary buffer), bufgs (secondary buffer), bufgls (spartan-xl global low-skew buffer), or bufg (any buffer type) element in a schematic or in hdl code. advanced features description distributed ram optional modes for each clb allow the function generators (f-lut and g-lut) to be used as random access memory (ram). read and write operations are significantly faster for this on-chip ram than for off-chip implementations. this speed advantage is due to the relatively short signal propagation delays within the fpga. memory configuration overview there are two available memory configuration modes: sin- gle-port ram and dual-port ram. for both these modes, write operations are synchronous (edge-triggered), while read operations are asynchronous. in the single-port mode, a single clb can be configured as either a 16 x 1, (16 x 1) x 2, or 32 x 1 ram array. in the dual-port mode, a single clb can be configured only as one 16 x 1 ram array. the different clb memory configurations are summarized in ta ble 8 . any of these possibilities can be individually pro- grammed into a spartan/xl clb. figure 11: 5v spartan family global net distribution x4 x4 ds060_11_080400 x4 4 one bufgp per global line one bufgp per global line any bufgs any bufgs bufgp pgck4 sgck4 pgck3 sgck3 bufgs bufgp bufgs iob iob iob iob iob iob iob iob iob iob iob bufgs bufgs bufgp bufgp sgck1 pgck1 sgck2 pgck2 iob x4 locals locals locals locals locals locals locals locals locals locals locals locals 4 4 4 clb clb locals locals clb clb locals locals ta ble 8 : clb memory configurations mode 16 x 1 (16 x 1) x 2 32 x 1 single-port ? dual-port ? ?
spartan and spartan-xl families field programmable gate arrays 14 www.xilinx.com ds060 (v1.6) september 19, 2001 1-800-255-7778 product specification r  the 16 x 1 single-port configuration contains a ram array with 16 locations, each one-bit wide. one 4-bit address decoder determines the ram location for write and read operations. there is one input for writing data and one output for reading data, all at the selected address.  the (16 x 1) x 2 single-port configuration combines two 16 x 1 single-port configurations (each according to the preceding description). there is one data input, one data output and one address decoder for each array. these arrays can be addressed independently.  the 32 x 1 single-port configuration contains a ram array with 32 locations, each one-bit wide. there is one data input, one data output, and one 5-bit address decoder.  the dual-port mode 16 x 1 configuration contains a ram array with 16 locations, each one-bit wide. there are two 4-bit address decoders, one for each port. one port consists of an input for writing and an output for reading, all at a selected address. the other port consists of one output for reading from an independently selected address. the appropriate choice of ram configuration mode for a given design should be based on timing and resource requirements, desired functionality, and the simplicity of the design process. selection criteria include the following: whereas the 32 x 1 single-port, the (16 x 1) x 2 single-port, and the 16 x 1 dual-port configurations each use one entire clb, the 16 x 1 single-port configuration uses only one half of a clb. due to its simultaneous read/write capability, the dual-port ram can transfer twice as much data as the sin- gle-port ram, which permits only one data operation at any given time. clb memory configuration options are selected by using the appropriate library symbol in the design entry. single-port mode there are three clb memory configurations for the sin- gle-port ram: 16 x 1, (16 x 1) x 2, and 32 x 1, the functional organization of which is shown in figure 12 . the single-port ram signals and the clb signals ( figure 2, page 4 ) from which they are originally derived are shown in table 9 . writing data to the single-port ram is essentially the same as writing to a data register. it is an edge-triggered (syn- chronous) operation performed by applying an address to the a inputs and data to the d input during the active edge of wclk while we is high. the timing relationships are shown in figure 13 . the high logic level on we enables the input data register for writing. the active edge of wclk latches the address, input data, and we signals. then, an internal write pulse is generated that loads the data into the memory cell. ta ble 9 : single-port ram signals ram signal function clb signal d0 or d1 data in din or h1 a[3:0] address f[4:1] or g[4:1] a4 (32 x 1 only) address h1 we write enable sr wclk clock k spo single port out (data out) f out or g out notes: 1. the (16 x 1) x 2 configuration combines two 16 x 1 single-port rams, each with its own independent address bus and data input. the same we and wclk signals are connected to both rams. 2. n = 4 for the 16 x 1 and (16 x 1) x 2 configurations. n = 5 for the 32 x 1 configuration. figure 12: logic diagram for the single-port ram we wclk a[n-1:0] d0 or d1 n n spo input register write row select write control read out 16 x 1 32 x 1 ram array read row select ds060_12_043010
spartan and spartan-xl families field programmable gate arrays ds060 (v1.6) september 19, 2001 www.xilinx.com 15 product specification 1-800-255-7778 r wclk can be configured as active on either the rising edge (default) or the falling edge. while the wclk input to the ram accepts the same signal as the clock input to the asso- ciated clb ? s flip-flops, the sense of this wclk input can be inverted with respect to the sense of the flip-flop clock inputs. consequently, within the same clb, data at the rams spo line can be stored in a flip-flop with either the same or the inverse clock polarity used to write data to the ram. the we input is active high and cannot be inverted within the clb. allowing for settling time, the data on the spo output reflects the contents of the ram location currently addressed. when the address changes, following the asyn- chronous delay t ilo , the data stored at the new address location will appear on spo. if the data at a particular ram address is overwritten, after the delay t wos , the new data will appear on spo. dual-port mode in dual-port mode, the function generators (f-lut and g-lut) are used to create a 16 x 1 dual-port memory. of the two data ports available, one permits read and write operations at the address specified by a[3:0] while the sec- ond provides only for read operations at the address speci- fied independently by dpra[3:0]. as a result, simultaneous read/write operations at different addresses (or even at the same address) are supported. the functional organization of the 16 x 1 dual-port ram is shown in figure 14 . the dual-port ram signals and the figure 13: data write and access timing for ram ds060_13_080400 wclk (k) we address data in data out old new t dss t dhs t ass t ahs t wss t wps t whs t wos t ilo t ilo figure 14: logic diagram for the dual-port ram we wclk a[3:0] d 4 4 4 4 spo dpra[3:0] input register write row select write control read out 16 x 1 ram read row select ds060_14_043001 dpo write row select write control read out 16 x 1 ram read row select
spartan and spartan-xl families field programmable gate arrays 16 www.xilinx.com ds060 (v1.6) september 19, 2001 1-800-255-7778 product specification r clb signals from which they are originally derived are shown in ta b l e 1 0 . the ram16x1d primitive used to instantiate the dual-port ram consists of an upper and a lower 16 x 1 memory array. the address port labeled a[3:0] supplies both the read and write addresses for the lower memory array, which behaves the same as the 16 x 1 single-port ram array described previously. single port out (spo) serves as the data output for the lower memory. therefore, spo reflects the data at address a[3:0]. the other address port, labeled dpra[3:0] for dual port read address, supplies the read address for the upper memory. the write address for this memory, however, comes from the address a[3:0]. dual port out (dpo) serves as the data output for the upper memory. therefore, dpo reflects the data at address dpra[3:0]. by using a[3:0] for the write address and dpra[3:0] for the read address, and reading only the dpo output, a fifo that can read and write simultaneously is easily generated. the simultaneous read/write capability possible with the dual-port ram can provide twice the effective data through- put of a single-port ram alternating read and write opera- tions. the timing relationships for the dual-port ram mode are shown in figure 13 . note that write operations to ram are synchronous (edge-triggered); however, data access is asynchronous. initializing ram at fpga configuration both ram and rom implementations in the spartan/xl families are initialized during device configuration. the initial contents are defined via an init attribute or property attached to the ram or rom symbol, as described in the schematic library guide. if not defined, all ram contents are initialized to zeros, by default. ram initialization occurs only during device configuration. the ram content is not affected by gsr. more information on using ram inside clbs three application notes are available from xilinx that dis- cuss synchronous (edge-triggered) ram: "xilinx edge-trig- gered and dual-port ram capability," "implementing fifos in xilinx ram," and "synchronous and asynchronous fifo designs." all three application notes apply to both the spar- tan and the spartan-xl families. fast carry logic each clb f-lut and g-lut contains dedicated arithmetic logic for the fast generation of carry and borrow signals. this extra output is passed on to the function generator in the adjacent clb. the carry chain is independent of normal routing resources. (see figure 15 .) dedicated fast carry logic greatly increases the efficiency and performance of adders, subtractors, accumulators, comparators and counters. it also opens the door to many new applications involving arithmetic operation, where the previous generations of fpgas were not fast enough or too inefficient. high-speed address offset calculations in micro- processor or graphics systems, and high-speed addition in digital signal processing are two typical applications. the two 4-input function generators can be configured as a 2-bit adder with built-in hidden carry that can be expanded to any length. this dedicated carry circuitry is so fast and efficient that conventional speed-up methods like carry gen- erate/propagate are meaningless even at the 16-bit level, and of marginal benefit at the 32-bit level. this fast carry logic is one of the more significant features of the spartan table 10: dual-port ram signals ram signal function clb signal ddata indin a[3:0] read address for single-port. write address for single-port and dual-port. f[4:1] dpra[3:0] read address for dual-port g[4:1] we write enable sr wclk clock k spo single port out (addressed by a[3:0]) f out dpo dual port out (addressed by dpra[3:0]) g out figure 15: available spartan/xl carry propagation paths clb clb clb clb clb clb clb clb clb clb clb clb clb clb clb clb ds060_15_081100
spartan and spartan-xl families field programmable gate arrays ds060 (v1.6) september 19, 2001 www.xilinx.com 17 product specification 1-800-255-7778 r and spartan-xl families, speeding up arithmetic and count- ing functions. the carry chain in 5v spartan devices can run either up or down. at the top and bottom of the columns where there are no clbs above and below, the carry is propagated to the right. the default is always to propagate up the column, as shown in the figures. the carry chain in spartan-xl devices can only run up the column, providing even higher speed. figure 16, page 18 shows a spartan/xl clb with dedi- cated fast carry logic. the carry logic shares operand and control inputs with the function generators. the carry out- puts connect to the function generators, where they are combined with the operands to form the sums. figure 17, page 19 shows the details of the spartan/xl carry logic. this diagram shows the contents of the box labeled "carry logic" in figure 16 . the fast carry logic can be accessed by placing special library symbols, or by using xilinx relationally placed mac- ros (rpms) that already include these symbols.
spartan and spartan-xl families field programmable gate arrays 18 www.xilinx.com ds060 (v1.6) september 19, 2001 1-800-255-7778 product specification r figure 16: fast carry logic in spartan/xl clb dq s/r ec yq y d in d in h g f g h dq s/r ec xq d in h g f h x h f g f carry logic ks/rec g4 g3 g2 g1 f3 f2 f1 f4 h1 ds060_16_080400 f carry g carry c in c out0 c out
spartan and spartan-xl families field programmable gate arrays ds060 (v1.6) september 19, 2001 www.xilinx.com 19 product specification 1-800-255-7778 r 3-state long line drivers a pair of 3-state buffers is associated with each clb in the array. these 3-state buffers (buft) can be used to drive signals onto the nearest horizontal longlines above and below the clb. they can therefore be used to implement multiplexed or bidirectional buses on the horizontal lon- glines, saving logic resources. there is a weak keeper at each end of these two horizontal longlines. this circuit prevents undefined floating levels. however, it is overridden by any driver. the buffer enable is an active high 3-state (i.e., an active low enable), as shown in ta ble 1 1 . three-state buffer example figure 18 shows how to use the 3-state buffers to imple- ment a multiplexer. the selection is accomplished by the buffer 3-state signal. pay particular attention to the polarity of the t pin when using these buffers in a design. active high 3-state (t) is identical to an active low output enable, as shown in ta ble 1 1 . figure 17: detail of spartan/xl dedicated carry logic 01 01 m m 0 1 01 m 0 1 m m 0 3 m 1 m i g1 g4 f2 f1 f3 c out c out0 g2 g3 f4 c in ds060_17_080400 to function generators m m m table 11: three-state buffer functionality in t out x1z in 0 in figure 18: 3-state buffers implement a multiplexer d n d c d b d a abcn z = (d a  a) + (d b  b) + (d c  c) + (d n  n) ~100 k ? "weak keeper" ds060_18_080400 buft buft buft buft
spartan and spartan-xl families field programmable gate arrays 20 www.xilinx.com ds060 (v1.6) september 19, 2001 1-800-255-7778 product specification r on-chip oscillator spartan/xl devices include an internal oscillator. this oscil- lator is used to clock the power-on time-out, for configura- tion memory clearing, and as the source of cclk in master configuration mode. the oscillator runs at a nominal 8 mhz frequency that varies with process, v cc , and temperature. the output frequency falls between 4 mhz and 10 mhz. the oscillator output is optionally available after configura- tion. any two of four resynchronized taps of a built-in divider are also available. these taps are at the fourth, ninth, four- teenth and nineteenth bits of the divider. therefore, if the primary oscillator output is running at the nominal 8 mhz, the user has access to an 8-mhz clock, plus any two of 500 khz, 16 khz, 490 hz and 15 hz. these frequencies can vary by as much as -50% or +25%. these signals can be accessed by placing the osc4 library element in a schematic or in hdl code. the oscillator is automatically disabled after configuration if the osc4 sym- bol is not used in the design. global signals: gsr and gts global set/reset a separate global set/reset line, as shown in figure 3, page 5 for the clb and figure 5, page 6 for the iob, sets or clears each flip-flop during power-up, reconfiguration, or when a dedicated reset net is driven active. this global net (gsr) does not compete with other routing resources; it uses a dedicated distribution network. each flip-flop is configured as either globally set or reset in the same way that the local set/reset (sr) is specified. therefore, if a flip-flop is set by sr, it is also set by gsr. similarly, if in reset mode, it is reset by both sr and gsr. gsr can be driven from any user-programmable pin as a global reset input. to use this global net, place an input pad and input buffer in the schematic or hdl code, driving the gsr pin of the startup symbol. (see figure 19 .) a spe- cific pin location can be assigned to this input using a loc attribute or property, just as with any other user-program- mable pad. an inverter can optionally be inserted after the input buffer to invert the sense of the gsr signal. alterna- tively, gsr can be driven from any internal node. global 3-state a separate global 3-state line (gts) as shown in figure 6, page 7 forces all fpga outputs to the high-impedance state, unless boundary scan is enabled and is executing an extest instruction. gts does not compete with other rout- ing resources; it uses a dedicated distribution network. gts can be driven from any user-programmable pin as a global 3-state input. to use this global net, place an input pad and input buffer in the schematic or hdl code, driving the gts pin of the startup symbol. this is similar to what is shown in figure 19 for gsr except the ibuf would be connected to gts. a specific pin location can be assigned to this input using a loc attribute or property, just as with any other user-programmable pad. an inverter can option- ally be inserted after the input buffer to invert the sense of the global 3-state signal. alternatively, gts can be driven from any internal node. boundary scan the "bed of nails" has been the traditional method of testing electronic assemblies. this approach has become less appropriate, due to closer pin spacing and more sophisti- cated assembly methods like surface-mount technology and multi-layer boards. the ieee boundary scan standard 1149.1 was developed to facilitate board-level testing of electronic assemblies. design and test engineers can embed a standard test logic structure in their device to achieve high fault coverage for i/o and internal logic. this structure is easily implemented with a four-pin interface on any boundary scan compatible device. i eee 1149.1-com- patible devices may be serial daisy-chained together, con- nected in parallel, or a combination of the two. the spartan and spartan-xl families implement ieee 1149.1-compatible bypass, preload/sample and extest boundary scan instructions. when the boundary scan configuration option is selected, three normal user i/o pins become dedicated inputs for these functions. another user output pin becomes the dedicated boundary scan out- put. the details of how to enable this circuitry are covered later in this section. by exercising these input signals, the user can serially load commands and data into these devices to control the driving of their outputs and to examine their inputs. this method is an improvement over bed-of-nails testing. it avoids the need to over-drive device outputs, and it reduces the user inter- face to four pins. an optional fifth pin, a reset for the control logic, is described in the standard but is not implemented in the spartan/xl devices. the dedicated on-chip logic implementing the ieee 1149.1 functions includes a 16-state machine, an instruction regis- ter and a number of data registers. the functional details can be found in the i eee 1149.1 specification and are also discussed in the xilinx application note: " boundary scan in fpga devices ." figure 19: schematic symbols for global set/reset pad ibuf gsr gts clk donein q1, q4 q2 q3 startup ds060_19_080400
spartan and spartan-xl families field programmable gate arrays ds060 (v1.6) september 19, 2001 www.xilinx.com 21 product specification 1-800-255-7778 r figure 20 is a diagram of the spartan/xl boundary scan logic. it includes three bits of data register per iob, the ieee 1 149.1 test access port controller, and the instruction register with decodes. spartan/xl devices can also be configured through the boundary scan logic. see configuration through the boundary scan pins , page 37 . data registers the primary data register is the boundary scan register. for each iob pin in the fpga, bonded or not, it includes three bits for in, out and 3-state control. non-iob pins have appropriate partial bit population for in or out only. pro- gram , cclk and done are not included in the boundary scan register. each extest capture-dr state captures all in, out, and 3-state pins. the data register also includes the following non-pin bits: tdo.t, and tdo.o, which are always bits 0 and 1 of the data register, respectively, and bscant.upd, which is always the last bit of the data register. these three bound- ary scan bits are special-purpose xilinx test signals. the other standard data register is the single flip-flop bypass register. it synchronizes data being passed through the fpga to the next downstream boundary scan device. the fpga provides two additional data registers that can be specified using the bscan macro. the fpga provides two user pins (bscan.sel1 and bscan.sel2) which are the decodes of two user instructions. for these instructions, two corresponding pins (bscan.tdo1 and bscan.tdo2) allow user scan data to be shifted out on tdo. the data register clock (bscan.drck) is available for control of test logic which the user may wish to implement with clbs. the nand of tck and run-test-idle is also provided (bscan.idle). instruction set the spartan/xl boundary scan instruction set also includes instructions to configure the device and read back the con- figuration data. the instruction set is coded as shown in ta ble 1 2 .
spartan and spartan-xl families field programmable gate arrays 22 www.xilinx.com ds060 (v1.6) september 19, 2001 1-800-255-7778 product specification r figure 20: spartan/xl boundary scan logic d q d q iob iob iob iob iob iob iob iob iob iob iob iob iob m u x bypass register iob iob tdo tdi iob iob iob 1 0 1 0 1 0 1 0 1 0 sd le dq d q d q 1 0 1 0 1 0 1 0 dq le sd sd le dq sd le dq iob d q 1 0 dq le sd iob.t data in iob.i iob.q iob.t iob.i shift/ capture clock data register dataout update extest ds060_20_080400 instruction register
spartan and spartan-xl families field programmable gate arrays ds060 (v1.6) september 19, 2001 www.xilinx.com 23 product specification 1-800-255-7778 r bit sequence the bit sequence within each iob is: in, out, 3-state. the input-only pins contribute only the in bit to the boundary scan i/o data register, while the output-only pins contributes all three bits. the first two bits in the i/o data register are tdo.t and tdo.o, which can be used for the capture of internal sig- nals. the final bit is bscant.upd, which can be used to drive an internal net. these locations are primarily used by xilinx for internal testing. from a cavity-up view of the chip (as shown in the fpga editor), starting in the upper right chip corner, the boundary scan data-register bits are ordered as shown in figure 21 . the device-specific pinout tables for the spartan/xl devices include the boundary scan locations for each iob pin. bsdl (boundary scan description language) files for spartan/xl devices are available on the xilinx website in the file download area. note that the 5v spartan devices and 3v spartan-xl devices have different bsdl files. including boundary scan in a design if boundary scan is only to be used during configuration, no special schematic elements need be included in the sche- matic or hdl code. in this case, the special boundary scan pins tdi, tms, tck and tdo can be used for user func- tions after configuration. to indicate that boundary scan remain enabled after config- uration, place the bscan library symbol and connect the tdi, tms, tck and tdo pad symbols to the appropriate pins, as shown in figure 22 . table 12: boundary scan instructions instruction test selected tdo source i/o data source i2 i1 i0 0 0 0 extest dr dr 0 0 1 sample/ preload dr pin/logic 0 1 0 user 1 bscan. tdo1 user logic 0 1 1 user 2 bscan. tdo2 user logic 1 0 0 readback readback data pin/logic 1 0 1 configure dout disabled 1 1 0 idcode (spartan-xl only) idcode register - 1 1 1 bypass bypass register - figure 21: boundary scan bit sequence figure 22: boundary scan schematic example bit 0 ( tdo end) bit 1 bit 2 tdo.t tdo.o top-edge iobs (right to left) left-edge iobs (top to bottom) mode.i bottom-edge iobs (left to right) right-edge iobs (bottom to top) bscant.upd (tdi end) ds060_21_080400 tdi tms tck tdo1 tdo2 tdo drck idle sel1 sel2 tdi tms tck tdo bscan to user logic ibuf optional from user logic to user logic ds060_22_080400
spartan and spartan-xl families field programmable gate arrays 24 www.xilinx.com ds060 (v1.6) september 19, 2001 1-800-255-7778 product specification r even if the boundary scan symbol is used in a schematic, the input pins tms, tck, and tdi can still be used as inputs to be routed to internal logic. care must be taken not to force the chip into an undesired boundary scan state by inadvertently applying boundary scan input patterns to these pins. the simplest way to prevent this is to keep tms high, and then apply whatever signal is desired to tdi and tck. avoiding inadvertent boundary scan if tms or tck is used as user i/o, care must be taken to ensure that at least one of these pins is held constant during configuration. in some applications, a situation may occur where tms or tck is driven during configuration. this may cause the device to go into boundary scan mode and dis- rupt the configuration process. to prevent activation of boundary scan during configuration, do either of the following:  tms: tie high to put the test access port controller in a benign reset state.  tck: tie high or low ? do not toggle this clock input. for more information regarding boundary scan, refer to the xilinx application note, " boundary scan in fpga devices . " boundary scan enhancements (spartan-xl only) spartan-xl devices have improved boundary scan func- tionality and performance in the following areas: idcode: the idcode register is supported. by using the idcode, the device connected to the jtag port can be determined. the use of the idcode enables selective con- figuration dependent on the fpga found. the idcode register has the following binary format: vvvv:ffff:fffa:aaaa:aaaa:cccc:cccc:ccc1 where c = the company code (49h for xilinx) a = the array dimension in clbs (ranges from 0ah for xcs05xl to 1ch for xcs40xl) f = the family code (02h for spartan-xl family) v = the die version number (currently 0h) configuration state: the configuration state is available to jtag controllers. configuration disable: the jtag port can be prevented from configuring the fpga. tck startup: tck can now be used to clock the start-up block in addition to other user clocks. cclk holdoff: changed the requirement for boundary scan configure or extest to be issued prior to the release of init pin and cclk cycling. reissue configure: the boundary scan configure can be reissued to recover from an unfinished attempt to configure the device. bypass ff: bypass ff and iob is modified to provide drclock only during bypass for the bypass flip-flop, and during extest or sample/preload for the iob register. power-down (spartan-xl only) all spartan/xl devices use a combination of efficient seg- mented routing and advanced process technology to pro- vide low power consumption under all conditions. the 3.3v spartan-xl family adds a dedicated active low power-down pin (pwrdwn ) to reduce supply current to 100 a typical. the pwrdwn pin takes advantage of one of the unused no connect locations on the 5v spartan device. the user must de-select the "5v tolerant i/os" option in the configu- ration options to achieve the specified power down current. the pwrdwn pin has a default internal pull-up resistor, allowing it to be left unconnected if unused. v cc must continue to be supplied during power-down, and configuration data is maintained. when the pwrdwn pin is pulled low, the input and output buffers are disabled. the inputs are internally forced to a logic low level, including the mode pins, done, cclk, and tdo, and all internal pull-up resistors are turned off. the program pin is not affected by power down. the gsr net is asserted during power down, initializing all the flip-flops to their start-up state. pwrdwn has a minimum pulse width of 50 ns ( figure 23 ). on entering the power-down state, the inputs will be dis- abled and the flip-flops set/reset, and then the outputs are disabled about 10 ns later. the user may prefer to assert the gts or gsr signals before pwrdwn to affect the order of events. when the pwrdwn signal is returned high, the inputs will be enabled first, followed immediately by the release of the gsr signal initializing the flip-flops. about 10 ns later, the outputs will be enabled. allow 50 ns after the release of pwrdwn before using the device. table 13: idcodes assigned to spartan-xl fpgas fpga idcode xcs05xl 0040a093h xcs10xl 0040e093h xcs20xl 00414093h xcs30xl 00418093h xcs40xl 0041c093h
spartan and spartan-xl families field programmable gate arrays ds060 (v1.6) september 19, 2001 www.xilinx.com 25 product specification 1-800-255-7778 r power-down retains the configuration, but loses all data stored in the device flip-flops. all inputs are interpreted as low, but the internal combinatorial logic is fully functional. make sure that the combination of all inputs low and all flip-flops set or reset in your design will not generate internal oscillations, or create permanent bus contention by activat- ing internal bus drivers with conflicting data onto the same long line. during configuration, the pwrdwn pin must be high. if the power down state is entered before or during configuration, the device will restart configuration once the pwrdwn sig- nal is removed. note that the configuration pins are affected by power down and may not reflect their normal function. if there is an external pull-up resistor on the done pin, it will be high during power down even if the device is not yet configured. similarly, if pwrdwn is asserted before config- uration is completed, the init pin will not indicate status information. note that the pwrdwn pin is not part of the boundary scan chain. therefore, the spartan-xl family has a sepa- rate set of bsdl files than the 5v spartan family. boundary scan logic is not usable during power down. configuration and test configuration is the process of loading design-specific pro- gramming data into one or more fpgas to define the func- tional operation of the internal blocks and their interconnections. this is somewhat like loading the com- mand registers of a programmable peripheral chip. spartan/xl devices use several hundred bits of configura- tion data per clb and its associated interconnects. each configuration bit defines the state of a static memory cell that controls either a function look-up table bit, a multiplexer input, or an interconnect pass transistor. the xilinx develop- ment system translates the design into a netlist file. it auto- matically partitions, places and routes the logic and generates the configuration data in prom format. configuration mode control 5v spartan devices have two configuration modes.  mode = 1 sets slave serial mode  mode = 0 sets master serial mode 3v spartan-xl devices have three configuration modes.  m1/m0 = 11 sets slave serial mode  m1/m0 = 10 sets master serial mode  m1/m0 = 0x sets express mode in addition to these modes, the device can be configured through the boundary scan logic ( see "configuration through the boundary scan pins" on page 37. ). the mode pins are sampled prior to starting configuration to determine the configuration mode. after configuration, these pin are unused. the mode pins have a weak pull-up resistor turned on during configuration. with the mode pins high, slave serial mode is selected, which is the most pop- ular configuration mode. therefore, for the most common configuration mode, the mode pins can be left unconnected. if the master serial mode is desired, the mode/m0 pin should be connected directly to gnd, or through a pull-down resistor of 1 k ? or less. figure 23: pwrdwn pulse timing power down mode 50 ns 50 ns t pwdw t pwd t pwdw outputs pwrdwn description power down time power down pulse width symbol min 50 ns 50 ns ds 060_23_041901
spartan and spartan-xl families field programmable gate arrays 26 www.xilinx.com ds060 (v1.6) september 19, 2001 1-800-255-7778 product specification r during configuration, some of the i/o pins are used tempo- rarily for the configuration process. all pins used during con- figuration are shown in ta ble 1 4 and ta ble 1 5 . table 14: pin functions during configuration (spartan family only) configuration mode (mode pin) user operation slave serial (high) master serial (low) mode (i) mode (i) mode hdc (high) hdc (high) i/o ldc (low) ldc (low) i/o init init i/o done done done program (i) program (i) program cclk (i) cclk (o) cclk (i) din (i) din (i) i/o dout dout sgck4-i/o tdi tdi tdi-i/o tck tck tck-i/o tms tms tms-i/o tdo tdo tdo-(o) all others notes: 1. a shaded table cell represents the internal pull-up used before and during configuration. 2. (i) represents an input; (o) represents an output. 3. init is an open-drain output during configuration. table 15: pin functions during configuration (spartan-xl family only) configuration mode user operation slave serial [1:1] master serial [1:0] express [0:x] m1 (high) (i) m1 (high) (i) m1(low) (i) m1 m0 (high) (i) m0 (low) (i) m0 (i) m0 hdc (high) hdc (high) hdc (high) i/o ldc (low) ldc (low) ldc (low) i/o init init init i/o done done done done program (i) program (i) program (i) program cclk (i) cclk (o) cclk (i) cclk (i) data 7 (i) i/o data 6 (i) i/o data 5 (i) i/o data 4 (i) i/o data 3 (i) i/o data 2 (i) i/o data 1 (i) i/o din (i) din (i) data 0 (i) i/o dout dout dout gck6-i/o tdi tdi tdi tdi-i/o tck tck tck tck-i/o tms tms tms tms-i/o tdo tdo tdo tdo-(o) cs1 i/o all others notes: 1. a shaded table cell represents the internal pull-up used before and during configuration. 2. (i) represents an input; (o) represents an output. 3. init is an open-drain output during configuration.
spartan and spartan-xl families field programmable gate arrays ds060 (v1.6) september 19, 2001 www.xilinx.com 27 product specification 1-800-255-7778 r master serial mode the master serial mode uses an internal oscillator to gener- ate a configuration clock (cclk) for driving potential slave devices and the xilinx serial-configuration prom (sprom). the cclk speed is selectable as either 1 mhz (default) or 8 mhz. configuration always starts at the default slow frequency, then can switch to the higher frequency dur- ing the first frame. frequency tolerance is ? 50% to +25%. in master serial mode, the cclk output of the device drives a xilinx sprom that feeds the fpga din input. each rising edge of the cclk output increments the serial prom inter- nal address counter. the next data bit is put on the sprom data output, connected to the fpga din pin. the fpga accepts this data on the subsequent rising cclk edge. when used in a daisy-chain configuration the master serial fpga is placed as the first device in the chain and is referred to as the lead fpga. the lead fpga presents the preamble data, and all data that overflows the lead device, on its dout pin. there is an internal pipeline delay of 1.5 cclk periods, which means that dout changes on the falling cclk edge, and the next fpga in the daisy chain accepts data on the subsequent rising cclk edge. see the timing diagram in figure 24 . in the bitstream generation software, the user can specify fast configuration rate, which, starting several bits into the first frame, increases the cclk frequency by a factor of eight. for actual timing values please refer to the specifica- tion section. be sure that the serial prom and slaves are fast enough to support this data rate. devices such as xc3000a and xc3100a do not support the fast configura- tion rate option. the sprom ce input can be driven from either ldc or done. using ldc avoids potential contention on the din pin, if this pin is configured as user i/o, but ldc is then restricted to be a permanently high user output after config- uration. using done can also avoid contention on din, pro- vided the early done option is invoked. figure 25 shows a full master/slave system. the leftmost device is in master serial mode, all other devices in the chain are in slave serial mode. slave serial mode in slave serial mode, the fpga receives serial configura- tion data on the rising edge of cclk and, after loading its configuration, passes additional data out, resynchronized on the next falling edge of cclk. in this mode, an external signal drives the cclk input of the fpga (most often from a master serial device). the serial configuration bitstream must be available at the din input of the lead fpga a short setup time before each rising cclk edge. the lead fpga then presents the preamble data ? and all data that overflows the lead device ? on its dout pin. there is an internal delay of 0.5 cclk periods, which means that dout changes on the falling cclk edge, and the next fpga in the daisy chain accepts data on the subsequent rising cclk edge. figure 25 shows a full master/slave system. a spartan/xl device in slave serial mode should be connected as shown in the third device from the left. figure 24: master serial mode programming switching characteristics serial data in cclk (output) serial dout (output) t dsck n n + 1 n + 2 n ? 3n ? 2n ? 1n t ckds ds060_24_080400 notes: 1. at power-up, v cc must rise from 2.0v to v cc min in less than 25 ms, otherwise delay configuration by pulling program low until v cc is valid. 2. master serial mode timing is based on testing in slave mode. symbol description min units cclk t dsck din setup 20 ns t ckds din hold 0 ns
spartan and spartan-xl families field programmable gate arrays 28 www.xilinx.com ds060 (v1.6) september 19, 2001 1-800-255-7778 product specification r slave serial is the default mode if the mode pins are left unconnected, as they have weak pull-up resistors during configuration. multiple slave devices with identical configurations can be wired with parallel din inputs. in this way, multiple devices can be configured simultaneously. serial daisy chain multiple devices with different configurations can be con- nected together in a "daisy chain," and a single combined bitstream used to configure the chain of slave devices. to configure a daisy chain of devices, wire the cclk pins of all devices in parallel, as shown in figure 25 . connect the dout of each device to the din of the next. the lead or master fpga and following slaves each passes resynchro- nized configuration data coming from a single source. the header data, including the length count, is passed through and is captured by each fpga when it recognizes the 0010 preamble. following the length-count data, each fpga out- puts a high on dout until it has received its required num- ber of data frames. after an fpga has received its configuration data, it passes on any additional frame start bits and configuration data on dout. when the total number of configuration clocks applied after memory initialization equals the value of the 24-bit length count, the fpgas begin the start-up sequence and become operational together. fpga i/o are normally released two cclk cycles after the last configuration bit is received. the daisy-chained bitstream is not simply a concatenation of the individual bitstreams. the prom file formatter must be used to combine the bitstreams for a daisy-chained con- figuration. figure 25: master/slave serial mode circuit diagram spartan master seria l spartan slave fpga slave xilinx sprom program note: m2, m1, m0 can be shorted to v cc if not used as i/o mode dout cclk clk v cc v cc +5v data ce ceo v pp reset/oe done din ldc init init done program program d/p init reset cclk din cclk din dout dout mode m1 m0 m2 (low reset option used) 3.3k 3.3k 3.3k 3.3k ds060_25_061301 n/c
spartan and spartan-xl families field programmable gate arrays ds060 (v1.6) september 19, 2001 www.xilinx.com 29 product specification 1-800-255-7778 r express mode (spartan-xl only) express mode is similar to slave serial mode, except that data is processed one byte per cclk cycle instead of one bit per cclk cycle. an external source is used to drive cclk, while byte-wide data is loaded directly into the con- figuration data shift registers ( figure 27 ). a cclk fre- quency of 1 mhz is equivalent to a 8 mhz serial rate, because eight bits of configuration data are loaded per cclk cycle. express mode does not support crc error checking, but does support constant-field error checking. a length count is not used in express mode. express mode must be specified as an option to the devel- opment system. the express mode bitstream is not com- patible with the other configuration modes (see ta b l e 1 6 , page 32 .) express mode is selected by a <0x> on the mode pins (m1, m0). the first byte of parallel configuration data must be available at the d inputs of the fpga a short setup time before the second rising cclk edge. subsequent data bytes are clocked in on each consecutive rising cclk edge ( figure 28 ). pseudo daisy chain multiple devices with different configurations can be config- ured in a pseudo daisy chain provided that all of the devices are in express mode. a single combined bitstream is used to configure the chain of express mode devices. cclk pins are tied together and d0-d7 pins are tied together for all devices along the chain. a status signal is passed from dout to cs1 of successive devices along the chain. frame data is accepted only when cs1 is high and the device ? s configuration memory is not already full. the lead device in the chain has its cs1 input tied high (or floating, since there is an internal pull-up). the status pin dout is pulled low after the header is received by all devices, and remains low until the device ? s configuration memory is full. dout is then pulled high to signal the next device in the chain to accept the configuration data on the d0-d7 bus. the done pins of all devices in the chain should be tied together, with one or more active internal pull-ups. if a large number of devices are included in the chain, deactivate some of the internal pull-ups, since the low-driving done pin of the last device in the chain must sink the current from all pull-ups in the chain. the done pull-up is activated by default. it can be deactivated using a development system option. the requirement that all done pins in a daisy chain be wired together applies only to express mode, and only if all devices in the chain are to become active simultaneously. all spartan-xl devices in express mode are synchronized to the done pin. user i/os for each device become active figure 26: slave serial mode programming switching characteristics t cch bit n bit n + 1 bit n bit n ? 1 t cco t ccl t ccd t dcc din cclk dout (output) ds060_26_080400 symbol description min max units t dcc cclk din setup 20 - ns t ccd din hold 0 - ns t cco din to dout - 30 ns t cch high time 40 - ns t ccl low time 40 - ns f cc frequency - 10 mhz notes: 1. configuration must be delayed until the init pins of all daisy-chained fpgas are high.
spartan and spartan-xl families field programmable gate arrays 30 www.xilinx.com ds060 (v1.6) september 19, 2001 1-800-255-7778 product specification r after the done pin for that device goes high. (the exact timing is determined by development system options.) since the done pin is open-drain and does not drive a high value, tying the done pins of all devices together prevents all devices in the chain from going high until the last device in the chain has completed its configuration cycle. if the done pin of a device is left unconnected, the device becomes active as soon as that device has been config- ured. because only spartan-xl, xc4000xla/xv, and xc5200 devices support express mode, only these devices can be used to form an express mode daisy chain. figure 27: express mode circuit diagram init cclk cclk spartan-xl m0 m1 cs1 d0-d7 data bus program init cclk program init dout done done dout to additional optional daisy-chained devices to additional optional daisy-chained devices optional daisy-chained spartan-xl m0 m1 vcc v cc 3.3k cs1 d0-d7 program ds060_27_080400 8 8 8
spartan and spartan-xl families field programmable gate arrays ds060 (v1.6) september 19, 2001 www.xilinx.com 31 product specification 1-800-255-7778 r setting cclk frequency in master mode, cclk can be generated in either of two frequencies. in the default slow mode, the frequency ranges from 0.5 mhz to 1.25 mhz for spartan/xl devices. in fast cclk mode, the frequency ranges from 4 mhz to 10 mhz for spartan/xl devices. the frequency is changed to fast by an option when running the bitstream generation software. data stream format the data stream ("bitstream") format is identical for both serial configuration modes, but different for the spartan-xl express mode. in express mode, the device becomes active when done goes high, therefore no length count is required. additionally, crc error checking is not supported in express mode. the data stream format is shown in ta ble 1 6 . bit-serial data is read from left to right. express mode data is shown with d0 at the left and d7 at the right. the configuration data stream begins with a string of eight ones, a preamble code, followed by a 24-bit length count and a separator field of ones (or 24 fill bits, in spartan-xl express mode). this header is followed by the actual con- figuration data in frames. the length and number of frames depends on the device type (see ta bl e 1 7 ). each frame begins with a start field and ends with an error check. in serial modes, a postamble code is required to signal the end of data for a single device. in all cases, additional start-up bytes of data are required to provide four clocks for the star- tup sequence at the end of configuration. long daisy chains require additional startup bytes to shift the last data through the chain. all start-up bytes are "don ? t cares". figure 28: express mode programming switching characteristics ds060_28_080400 byte 0 cclk fpga filled init t dc t cd t ic d0-d7 dout byte 1 byte 6 header received symbol description min max units t ic cclk init (high) setup time 5 - s t dc d0-d7 setup time 20 - ns t cd d0-d7 hold time 0 - ns t cch cclk high time 45 - ns t ccl cclk low time 45 - ns f cc cclk frequency - 10 mhz notes: 1. if not driven by the preceding dout, cs1 must remain high until the device is fully configured.
spartan and spartan-xl families field programmable gate arrays 32 www.xilinx.com ds060 (v1.6) september 19, 2001 1-800-255-7778 product specification r legend: a selection of crc or non-crc error checking is allowed by the bitstream generation software. the spartan-xl express mode only supports non-crc error checking. the non-crc error checking tests for a designated end-of-frame field for each frame. for crc error checking, the software calculates a running crc and inserts a unique four-bit partial check at the end of each frame. the 11-bit crc check of the last frame of an fpga includes the last seven data bits. detection of an error results in the suspension of data load- ing before done goes high, and the pulling down of the init pin. in master serial mode, cclk continues to operate externally. the user must detect init and initialize a new configuration by pulsing the program pin low or cycling v cc . cyclic redundancy ch eck (crc) for configura- tion and readback the cyclic redundancy check is a method of error detec- tion in data transmission applications. generally, the trans- mitting system performs a calculation on the serial bitstream. the result of this calculation is tagged onto the data stream as additional check bits. the receiving system performs an identical calculation on the bitstream and com- pares the result with the received checksum. each data frame of the configuration bitstream has four error bits at the end, as shown in ta b l e 1 6 . if a frame data error is detected during the loading of the fpga, the config- uration process with a potentially corrupted bitstream is ter- minated. the fpga pulls the init pin low and goes into a wait state. table 16: spartan/xl data stream formats data type serial modes (d0...) express mode (d0-d7) (spartan-xl only) fill byte 11111111b ffffh preamble code 0010b 11110010b length count count[23:0] count[23:0] (1) fill bits 1111b - field check code - 11010010b start field 0b 11111110b (2) data frame data[n ? 1:0] data[n ? 1:0] crc or constant field check xxxx (crc) or 0110b 11010010b extend write cycle - ffd2ffffffh postamble 01111111b - start-up bytes (3) ffh ffffffffffffffh unshaded once per bitstream light once per data frame dark once per device notes: 1. not used by configuration logic. 2. 11111111b for xcs40xl only. 3. development system may add more start-up bytes.
spartan and spartan-xl families field programmable gate arrays ds060 (v1.6) september 19, 2001 www.xilinx.com 33 product specification 1-800-255-7778 r during readback, 11 bits of the 16-bit checksum are added to the end of the readback data stream. the checksum is computed using the crc-16 ccitt polynomial, as shown in figure 29 . the checksum consists of the 11 most signifi- cant bits of the 16-bit code. a change in the checksum indi- cates a change in the readback bitstream. a comparison to a previous checksum is meaningful only if the readback data is independent of the current device state. clb outputs should not be included (readback capture option not used), and if ram is present, the ram content must be unchanged. statistically, one error out of 2048 might go undetected. table 17: spartan/xl program data device xcs05 xcs10 xcs20 xcs30 xcs40 max system gates 5,000 10,000 20,000 30,000 40,000 clbs (row x col.) 100 (10 x 10) 196 (14 x 14) 400 (20 x 20) 576 (24 x 24) 784 (28 x 28) iobs 80 112 160 192 224 part number xcs05 xcs05xl xcs10 xcs10xl xcs20 xcs20xl xcs30 xcs30xl xcs40 xcs40xl supply voltage 5v 3.3v 5v 3.3v 5v 3.3v 5v 3.3v 5v 3.3v bits per frame 126 127 166 167 226 227 266 267 306 307 frames 428 429 572 573 788 789 932 933 1,076 1,077 program data 53,936 54,491 94,960 95,699 178,096 179,111 247,920 249,119 329,264 330,647 prom size (bits) 53,984 54,544 95,008 95,752 178,144 179,160 247,968 249,168 329,312 330,696 serial prom 17s05 17s05xl 17s10 17s10xl 17s20 17s20xl 17s30 17s30xl 17s40 17s40xl express mode prom size (bits) - 79,072 - 128,488 - 221,056 - 298,696 - 387,856 notes: 1. bits per frame = (10 x number of rows) + 7 for the top + 13 for the bottom + 1 + 1 start bit + 4 error check bits (+1 for spa rtan-xl device) number of frames = (36 x number of columns) + 26 for the left edge + 41 for the right edge + 1 (+ 1 for spartan-xl device) program data = (bits per frame x number of frames) + 8 postamble bits prom size = program data + 40 (header) + 8, rounded up to the nearest byte 2. the user can add more "1" bits as leading dummy bits in the header, or, if crc = off, as trailing dummy bits at the end of an y frame, following the four error check bits. however, the length count value must be adjusted for all such extra "one" bits, even for extra leading ones at the beginning of the header. 3. express mode adds 57 (xcs05xl, xcs10xl), or 53 (xcs20xl, xcs30xl, xcs40xl) bits per frame, + additional start-up bits.
spartan and spartan-xl families field programmable gate arrays 34 www.xilinx.com ds060 (v1.6) september 19, 2001 1-800-255-7778 product specification r configuration sequence there are four major steps in the spartan/xl power-up con- figuration sequence.  configuration memory clear  initialization  configuration  start-up the full process is illustrated in figure 30 . configuration memory clear when power is first applied or is reapplied to an fpga, an internal circuit forces initialization of the configuration logic. when v cc reaches an operational level, and the circuit passes the write and read test of a sample pair of configu- ration bits, a time delay is started. this time delay is nomi- nally 16 ms. the delay is four times as long when in master serial mode to allow ample time for all slaves to reach a sta- ble v cc . when all init pins are tied together, as recom- mended, the longest delay takes precedence. therefore, devices with different time delays can easily be mixed and matched in a daisy chain. this delay is applied only on power-up. it is not applied when reconfiguring an fpga by pulsing the program pin low. during this time delay, or as long as the program input is asserted, the configuration logic is held in a config- uration memory clear state. the configuration-memory frames are consecutively initialized, using the internal oscil- lator. at the end of each complete pass through the frame addressing, the power-on time-out delay circuitry and the level of the program pin are tested. if neither is asserted, the logic initiates one additional clearing of the configuration frames and then tests the init input. initialization during initialization and configuration, user pins hdc, ldc , init and done provide status outputs for the system inter- face. the outputs ldc , init and done are held low and hdc is held high starting at the initial application of power. the open drain init pin is released after the final initializa- tion pass through the frame addresses. there is a deliber- ate delay before a master-mode device recognizes an inactive init . two internal clocks after the init pin is recog- nized as high, the device samples the mode pin to deter- mine the configuration mode. the appropriate interface lines become active and the configuration preamble and data can be loaded. figure 29: circuit for generating crc-16 0 x2 2 3456789101112 13 14 1 x15 x16 15 serial data in 1 01514131211109 8 7 65 1 1 1 1 crc ? checksum last data frame start bit ds060_29_080400 polynomial: x16 + x15 + x2 + 1 readback data stream
spartan and spartan-xl families field programmable gate arrays ds060 (v1.6) september 19, 2001 www.xilinx.com 35 product specification 1-800-255-7778 r configuration the 0010 preamble code indicates that the following 24 bits represent the length count for serial modes. the length count is the total number of configuration clocks needed to load the complete configuration data. (four additional con- figuration clocks are required to complete the configuration process, as discussed below.) after the preamble and the length count have been passed through to any device in the daisy chain, its dout is held high to prevent frame start bits from reaching any daisy-chained devices. in spar- tan-xl express mode, the length count bits are ignored, and dout is held low, to disable the next device in the pseudo daisy chain. a specific configuration bit, early in the first frame of a mas- ter device, controls the configuration-clock rate and can increase it by a factor of eight. therefore, if a fast configura- tion clock is selected by the bitstream, the slower clock rate is used until this configuration bit is detected. each frame has a start field followed by the frame-configu- ration data bits and a frame error field. if a frame data error is detected, the fpga halts loading, and signals the error by pulling the open-drain init pin low. after all configuration frames have been loaded into an fpga using a serial mode, dout again follows the input data so that the remaining data is passed on to the next device. in spartan-xl express mode, when the first device is fully pro- grammed, dout goes high to enable the next device in the chain. delaying configuration after power-up there are two methods of delaying configuration after power-up: put a logic low on the program input, or pull the bidirectional init pin low, using an open-collector (open-drain) driver. (see figure 30 .) a low on the program input is the more radical approach, and is recommended when the power-supply rise time is excessive or poorly defined. as long as program is low, the fpga keeps clearing its configuration memory. when program goes high, the configuration memory is cleared one more time, followed by the beginning of config- uration, provided the init input is not externally held low. note that a low on the program input automatically forces a low on the init output. the spartan/xl pro- gram pin has a permanent weak pull-up. avoid holding program low for more than 500 s. using an open-collector or open-drain driver to hold init low before the beginning of configuration causes the fpga to wait after completing the configuration memory clear operation. when init is no longer held low externally, the device determines its configuration mode by capturing the state of the mode pins, and is ready to start the configura- tion process. a master device waits up to an additional 300 s to make sure that any slaves in the optional daisy chain have seen that init is high. figure 30: power-up configuration sequence init high? if master sample mode line load one configuration data frame frame error pass configuration data to dout v cc valid no yes yes no no yes operational start-up sequence no yes ~1.3 s per frame master delays before sampling mode line master cclk goes active f pull init low and stop ds060_30_080400 extest* sample/preload bypass configure* (* if program = high) sample/preload bypass extest sample preload bypass user 1 user 2 configure readback if boundary scan is selected config- uration memory full cclk count equals length count completely clear configuration memory once more ldc output = l, hdc output = h boundary scan instructions available: i/o active keep clearing configuration memory test mode, generate one time-out pulse of 16 or 64 ms program = low no yes yes
spartan and spartan-xl families field programmable gate arrays 36 www.xilinx.com ds060 (v1.6) september 19, 2001 1-800-255-7778 product specification r for more details on configuration, refer to the xilinx appli- cation note "fpga configuration guidelines" (xapp090). start-up start-up is the transition from the configuration process to the intended user operation. this transition involves a change from one clock source to another, and a change from interfacing parallel or serial configuration data where most outputs are 3-stated, to normal operation with i/o pins active in the user system. start-up must make sure that the user logic ? wakes up ? gracefully, that the outputs become active without causing contention with the configuration sig- nals, and that the internal flip-flops are released from the global set/reset (gsr) at the right time. start-up initiation two conditions have to be met in order for the start-up sequence to begin:  the chip's internal memory must be full, and  the configuration length count must be met, exactly. in all configuration modes except express mode, spar- tan/xl devices read the expected length count from the bit- stream and store it in an internal register. the length count varies according to the number of devices and the composi- tion of the daisy chain. each device also counts the number of cclks during configuration. in express mode, there is no length count. the start-up sequence for each device begins when the device has received its quota of configuration data. wiring the done pins of several devices together delays start-up of all devices until all are fully configured. start-up events the device can be programmed to control three start-up events.  the release of the open-drain done output  the termination of the global three-state and the change of configuration-related pins to the user function, activating all iobs.  the termination of the global set/reset initialization of all clb and iob storage elements. figure 31 describes start-up timing in detail. the three events ? done going high, the internal gsr being de-activated, and the user i/o going active ? can all occur in any arbitrary sequence. this relative timing is selected by options in the bitstream generation software. heavy lines in figure 31 show the default timing. the thin lines indicate all other possible timing options. the start-up logic must be clocked until the "f" (finished) state is reached. the default option, and the most practical one, is for done to go high first, disconnecting the configuration data source and avoiding any contention when the i/os become active one clock later. gsr is then released another clock period later to make sure that user operation starts from stable internal conditions. this is the most common sequence, shown with heavy lines in figure 31 , but the designer can modify it to meet particular requirements. start-up clock normally, the start-up sequence is controlled by the internal device oscillator (cclk), which is asynchronous to the sys- tem clock. as a configuration option, they can be triggered by an on-chip user net called uclk. this user net can be accessed by placing the startup library symbol, and the start-up modes are known as uclk_nosync or uclk_sync. this allows the device to wake up in synchro- nism with the user system. done pin note that done is an open-drain output and does not go high unless an internal pull-up is activated or an external pull-up is attached. the internal pull-up is activated as the default by the bitstream generation software. the done pin can also be wire-anded with done pins of other fpgas or with other external signals, and can then be used as input to the start-up control logic. this is called ? start-up timing synchronous to done in ? and is selected by either cclk_sync or uclk_sync. when done is not used as an input, the operation is called ? start-up timing not synchronous to done in, ? and is selected by either cclk_nosync or uclk_nosync. express mode con- figuration always uses either cclk_sync or uclk_sync timing, while the other configuration modes can use any of the four timing sequences. when the uclk_sync option is enabled, the user can externally hold the open-drain done output low, and thus stall all further progress in the start-up sequence until done is released and has gone high. this option can be used to force synchronization of several fpgas to a com- mon user clock, or to guarantee that all devices are suc- cessfully configured before any i/os go active.
spartan and spartan-xl families field programmable gate arrays ds060 (v1.6) september 19, 2001 www.xilinx.com 37 product specification 1-800-255-7778 r configuration through the boundary scan pins spartan/xl devices can be configured through the bound- ary scan pins. the basic procedure is as follows:  power up the fpga with init held low (or drive the program pin low for more than 300 ns followed by a high while holding init low). holding init low allows enough time to issue the config command to the fpga. the pin can be used as i/o after configuration if a resistor is used to hold init low.  issue the config command to the tms input.  wait for init to go high.  sequence the boundary scan test access port to the shift-dr state.  toggle tck to clock data into tdi pin. the user must account for all tck clock cycles after init goes high, as all of these cycles affect the length count compare. for more detailed information, refer to the xilinx application note, " boundary scan in fpga devices ." this application note applies to spartan and spartan-xl devices. figure 31: start-up timing uclk_sync uclk_nosync cclk_sync cclk_nosync cclk gsr active uclk period done in done in di di+1 di+2 di di+1 di+2 u2 u3 u4 u2 u3 u4 u2 u3 u4 c1 synchronization uncertainty di di+1 di di+1 done i/o gsr active done i/o gsr active done c1 c2 c1 u2 c3 c4 c2 c3 c4 c2 c3 c4 i/o gsr active done i/o f = finished, no more configuration clocks needed daisy-chain lead device must have latest f heavy lines describe default timing cclk period length count match f f f f ds060_39_082801 c1, c2 or c3
spartan and spartan-xl families field programmable gate arrays 38 www.xilinx.com ds060 (v1.6) september 19, 2001 1-800-255-7778 product specification r readback the user can read back the content of configuration mem- ory and the level of certain internal nodes without interfering with the normal operation of the device. readback not only reports the downloaded configuration bits, but can also include the present state of the device, represented by the content of all flip-flops and latches in clbs and iobs, as well as the content of function genera- tors used as rams. although readback can be performed while the device is operating, for best results and to freeze a known capture state, it is recommended that the clock inputs be stopped until readback is complete. readback of spartan-xl express mode bitstreams results in data that does not resemble the original bitstream, because the bitstream format differs from other modes. spartan/xl readback does not use any dedicated pins, but uses four internal nets (rdbk.trig, rdbk.data, rdbk.rip and rdbk.clk) that can be routed to any iob. to access the internal readback signals, instantiate the readback library symbol and attach the appropriate pad symbols, as shown in figure 32 . after readback has been initiated by a low-to-high transi- tion on rdbk.trig, the rdbk.rip (read in progress) out- put goes high on the next rising edge of rdbk.clk. subsequent rising edges of this clock shift out readback data on the rdbk.data net. readback data does not include the preamble, but starts with five dummy bits (all high) followed by the start bit (low) of the first frame. the first two data bits of the first frame are always high. each frame ends with four error check bits. they are read back as high. the last seven bits of the last frame are also read back as high. an additional start bit (low) and an 11-bit cyclic redundancy check (crc) signature follow, before rdbk.rip returns low. readback options readback options are: readback capture, readback abort, and clock select. they are set with the bitstream generation software. readback capture when the readback capture option is selected, the data stream includes sampled values of clb and iob signals. the rising edge of rdbk.trig latches the inverted values of the four clb outputs, the iob output flip-flops and the input signals i1 and i2. note that while the bits describing configuration (interconnect, function generators, and ram content) are not inverted, the clb and iob output signals are inverted. rdbk.trig is located in the lower-left corner of the device. when the readback capture option is not selected, the val- ues of the capture bits reflect the configuration data origi- nally written to those memory locations. if the ram capability of the clbs is used, ram data are available in readback, since they directly overwrite the f and g func- tion-table configuration of the clb. figure 32: readback schematic example readback data rip trig clk read_data obuf read_trigger ibuf ds060_31_080400 if unconnected, default is cclk
spartan and spartan-xl families field programmable gate arrays ds060 (v1.6) september 19, 2001 www.xilinx.com 39 product specification 1-800-255-7778 r readback abort when the readback abort option is selected, a high-to-low transition on rdbk.trig terminates the readback opera- tion and prepares the logic to accept another trigger. after an aborted readback, additional clocks (up to one readback clock per configuration frame) may be required to re-initialize the control logic. the status of readback is indi- cated by the output control net rdbk.rip. rdbk.rip is high whenever a readback is in progress. clock select cclk is the default clock. however, the user can insert another clock on rdbk.clk. readback control and data are clocked on rising edges of rdbk.clk. if readback must be inhibited for security reasons, the readback control nets are simply not connected. rdbk.clk is located in the lower right chip corner. violating the maximum high and low time specification for the readback clock the readback clock has a maximum high and low time specification. in some cases, this specification cannot be met. for example, if a processor is controlling readback, an interrupt may force it to stop in the middle of a readback. this necessitates stopping the clock, and thus violating the specification. the specification is mandatory only on clocking data at the end of a frame prior to the next start bit. the transfer mech- anism will load the data to a shift register during the last six clock cycles of the frame, prior to the start bit of the following frame. this loading process is dynamic, and is the source of the maximum high and low time requirements. therefore, the specification only applies to the six clock cycles prior to and including any start bit, including the clocks before the first start bit in the readback data stream. at other times, the frame data is already in the register and the register is not dynamic. thus, it can be shifted out just like a regular shift register. the user must precisely calculate the location of the read- back data relative to the frame. the system must keep track of the position within a data frame, and disable interrupts before frame boundaries. frame lengths and data formats are listed in table 16 and table 17 .
spartan and spartan-xl families field programmable gate arrays 40 www.xilinx.com ds060 (v1.6) september 19, 2001 1-800-255-7778 product specification r readback switching charateristics guidelines the following guidelines reflect worst-case values over the recommended operating conditions. figure 33: spartan and spartan-xl readback timing diagram spartan and spartan-xl readback switching characteristics symbol description min max units t rtrc rdbk.trig rdbk.trig setup to initiate and abort readback 200 - ns t rcrt rdbk.trig hold to initiate and abort readback 50 - ns t rcrd rdclk.i rdbk.data delay - 250 ns t rcrr rdbk.rip delay - 250 ns t rch high time 250 500 ns t rcl low time 250 500 ns notes: 1. timing parameters apply to all speed grades. 2. if rdbk.trig is high prior to finished, finished will trigger the first readback. t rtrc t rcrt t rch t rcrr t rcrd t rtrc t rcrt t rcl dummy dummy rdbk.data rdbk.rip rdclk.i rdbk.trig finished internal net valid ds060_32_080400 valid
spartan and spartan-xl families field programmable gate arrays ds060 (v1.6) september 19, 2001 www.xilinx.com 41 product specification 1-800-255-7778 r configuration switching characteristics master mode slave mode ds060_33_080400 t por v cc program mode pins (required) cclk output or input done response re-program i/o init t pi t cclk t icck >300 ns <300 ns <300 ns symbol description min max units t por power-on reset 40 130 ms t pi program latency 30 200 s per clb column t icck cclk (output) delay 40 250 s t cclk cclk (output) period, slow 640 2000 ns t cclk cclk (output) period, fast 100 250 ns symbol description min max units t por power-on reset 10 33 ms t pi program latency 30 200 s per clb column t icck cclk (input) delay (required) 4 - s t cclk cclk (input) period (required) 80 - ns
spartan and spartan-xl families field programmable gate arrays 42 www.xilinx.com ds060 (v1.6) september 19, 2001 1-800-255-7778 product specification r spartan detailed specifications definition of terms in the following tables, some specifications may be designated as advance or preliminary. these terms are defined as follows: advance: initial estimates based on simulation and/or extrapolation from other speed grades, devices, or families. values are subject to change. use as estimates, not for production. preliminary: based on preliminary characterization. further changes are not expected. unmarked: specifications not identified as either advance or preliminary are to be considered final. notwithstanding the definition of the above terms, all specifications are subject to change without notice. except for pin-to-pin input and output parameters, the ac parameter delay specifications included in this document are derived from measuring internal test patterns. all specifications are representative of worst-case supply voltage and junction temperature conditions. the parameters included are common to popular designs and typical applications. spartan absolute maximum ratings (1) spartan recommended operating conditions symbol description value units v cc supply voltage relative to gnd ? 0.5 to +7.0 v v in input voltage relative to gnd (2,3) ? 0.5 to v cc +0.5 v v ts voltage applied to 3-state output (2,3) ? 0.5 to v cc +0.5 v t stg storage temperature (ambient) ? 65 to +150 c t j junction temperature plastic packages +125 c notes: 1. stresses beyond those listed under absolute maximum ratings may cause permanent damage to the device. these are stress ratings only, and functional operation of the device at these or any other conditions beyond those listed under operating condi tions is not implied. exposure to absolute maximum ratings conditions for extended periods of time may affect device reliability. 2. maximum dc overshoot (above v cc ) or undershoot (below gnd) must be limited to either 0.5v or 10 ma, whichever is easier to achieve. 3. maximum ac (during transitions) conditions are as follows; the device pins may undershoot to ? 2.0v or overshoot to +7.0v, provided this overshoot or undershoot lasts no more than 11 ns with a forcing current no greater than 100 ma. 4. for soldering guidelines, see the package infomation on the xilinx website. symbol description min max units v cc supply voltage relative to gnd, t j = 0 c to +85 c commercial 4.75 5.25 v supply voltage relative to gnd, t j = ? 40 c to +100 c (1) industrial 4.5 5.5 v v ih high-level input voltage (2) ttl inputs 2.0 v cc v cmos inputs 70% 100% v cc v il low-level input voltage (2) ttl inputs 0 0.8 v cmos inputs 0 20% v cc t in input signal transition time - 250 ns notes: 1. at junction temperatures above those listed as recommended operating conditions, all delay parameters increase by 0.35% per c. 2. input and output measurement thresholds are: 1.5v for ttl and 2.5v for cmos.
spartan and spartan-xl families field programmable gate arrays ds060 (v1.6) september 19, 2001 www.xilinx.com 43 product specification 1-800-255-7778 r spartan dc characteristics over operating conditions spartan global buffer switching characteristic guidelines testing of the switching parameters is modeled after testing methods specified by mil-m-38510/605. all devices are 100% functionally tested. internal timing parameters are derived from measuring internal test patterns. listed below are representative values where one global clock input drives one vertical clock line in each accessible column, and where all accessible iob and clb flip-flops are clocked by the global clock net. when fewer vertical clock lines are connected, the clock dis- tribution is faster; when multiple clock lines per column are driven from the same global clock, the delay is longer. for more specific, more precise, and worst-case guaranteed data, reflecting the actual routing structure, use the values provided by the static timing analyzer (trce in the xilinx development system) and back-annotated to the simulation netlist. these path delays, provided as a guideline, have been extracted from the static timing analyzer report. all timing parameters assume worst-case operating conditions (supply voltage and junction temperature). symbol description min max units v oh high-level output voltage @ i oh = ? 4.0 ma, v cc min ttl outputs 2.4 - v high-level output voltage @ i oh = ? 1.0 ma, v cc min cmos outputs v cc ? 0.5 - v v ol low-level output voltage @ i ol = 12.0 ma, v cc min (1) ttl outputs - 0.4 v cmos outputs - 0.4 v v dr data retention supply voltage (below which configuration data may be lost) 3.0 - v i cco quiescent fpga supply current (2) commercial - 3.0 ma industrial - 6.0 ma i l input or output leakage current ? 10 +10 a c in input capacitance (sample tested) - 10 pf i rpu pad pull-up (when selected) @ v in = 0v (sample tested) 0.02 0.25 ma i rpd pad pull-down (when selected) @ v in = 5v (sample tested) 0.02 - ma notes: 1. with 50% of the outputs simultaneously sinking 12 ma, up to a maximum of 64 pins. 2. with no output current loads, no active input pull-up resistors, all package pins at v cc or gnd, and the fpga configured with a tie option. symbol description device speed grade units -4 -3 max max t pg from pad through primary buffer, to any clock k xcs05 2.0 4.0 ns xcs10 2.4 4.3 ns xcs20 2.8 5.4 ns xcs30 3.2 5.8 ns xcs40 3.5 6.4 ns t sg from pad through secondary buffer, to any clock k xcs05 2.5 4.4 ns xcs10 2.9 4.7 ns xcs20 3.3 5.8 ns xcs30 3.6 6.2 ns xcs40 3.9 6.7 ns
spartan and spartan-xl families field programmable gate arrays 44 www.xilinx.com ds060 (v1.6) september 19, 2001 1-800-255-7778 product specification r spartan clb switching characteristic guidelines testing of switching parameters is modeled after testing methods specified by mil-m-38510/605. all devices are 100% functionally tested. internal timing parameters are derived from measuring internal test patterns. listed below are representative values. for more specific, more precise, and worst-case guaranteed data, use the values reported by the static timing analyzer (trce in the xilinx develop- ment system) and back-annotated to the simulation netlist. all timing parameters assume worst-case operating condi- tions (supply voltage and junction temperature). values apply to all spartan devices and expressed in nanoseconds unless otherwise noted. symbol description speed grade units -4 -3 min max min max clocks t ch clock high time 3.0 - 4.0 - ns t cl clock low time 3.0 - 4.0 - ns combinatorial delays t ilo f/g inputs to x/y outputs - 1.2 - 1.6 ns t iho f/g inputs via h to x/y outputs - 2.0 - 2.7 ns t hh1o c inputs via h1 via h to x/y outputs - 1.7 - 2.2 ns clb fast carry logic t opcy operand inputs (f1, f2, g1, g4) to c out -1.7-2.1ns t ascy add/subtract input (f3) to c out -2.8-3.7ns t incy initialization inputs (f1, f3) to c out -1.2-1.4ns t sum c in through function generators to x/y outputs - 2.0 - 2.6 ns t byp c in to c out , bypass function generators - 0.5 - 0.6 ns sequential delays t cko clock k to flip-flop outputs q - 2.1 - 2.8 ns setup time before clock k t ick f/g inputs 1.8 - 2.4 - ns t ihck f/g inputs via h 2.9 - 3.9 - ns t hh1ck c inputs via h1 through h 2.3 - 3.3 - ns t dick c inputs via din 1.3 - 2.0 - ns t ecck c inputs via ec 2.0 - 2.6 - ns t rck c inputs via s/r, going low (inactive) 2.5 - 4.0 - ns hold time after clock k all hold times, all devices 0.0 - 0.0 - ns set/reset direct t rpw width (high) 3.0 - 4.0 - ns t rio delay from c inputs via s/r, going high to q - 3.0 - 4.0 ns global set/reset t mrw minimum gsr pulse width 11.5 - 13.5 - ns t mrq delay from gsr input to any q see page 50 for t rri values per device. f tog toggle frequency (mhz) (for export control purposes) - 166 - 125 mhz
spartan and spartan-xl families field programmable gate arrays ds060 (v1.6) september 19, 2001 www.xilinx.com 45 product specification 1-800-255-7778 r spartan clb ram synchronous (edge-triggered) write operation guidelines testing of switching parameters is modeled after testing methods specified by mil-m-38510/605. all devices are 100% functionally tested. internal timing parameters are derived from measuring internal test patterns. listed below are representative values. for more specific, more precise, and worst-case guaranteed data, use the values reported by the static timing analyzer (trce in the xilinx develop- ment system) and back-annotated to the simulation netlist. all timing parameters assume worst-case operating condi- tions (supply voltage and junction temperature). values apply to all spartan devices and are expressed in nanosec- onds unless otherwise noted. symbol single port ram size (1) speed grade units -4 -3 min max min max write operation t wcs address write cycle time (clock k period) 16x2 8.0 - 11.6 - ns t wcts 32x1 8.0 - 11.6 - ns t wps clock k pulse width (active edge) 16x2 4.0 - 5.8 - ns t wpts 32x1 4.0 - 5.8 - ns t ass address setup time before clock k 16x2 1.5 - 2.0 - ns t asts 32x1 1.5 - 2.0 - ns t ahs address hold time after clock k 16x2 0.0 - 0.0 - ns t ahts 32x1 0.0 - 0.0 - ns t dss din setup time before clock k 16x2 1.5 - 2.7 - ns t dsts 32x1 1.5 - 1.7 - ns t dhs din hold time after clock k 16x2 0.0 - 0.0 - ns t dhts 32x1 0.0 - 0.0 - ns t wss we setup time before clock k 16x2 1.5 - 1.6 - ns t wsts 32x1 1.5 - 1.6 - ns t whs we hold time after clock k 16x2 0.0 - 0.0 - ns t whts 32x1 0.0 - 0.0 - ns t wos data valid after clock k 16x2 - 6.5 - 7.9 ns t wots 32x1 - 7.0 - 9.3 ns read operation t rc address read cycle time 16x2 2.6 - 2.6 - ns t rct 32x1 3.8 - 3.8 - ns t ilo data valid after address change (no write enable) 16x2 - 1.2 - 1.6 ns t iho 32x1 - 2.0 - 2.7 ns t ick address setup time before clock k 16x2 1.8 - 2.4 - ns t ihck 32x1 2.9 - 3.9 - ns notes: 1. timing for 16 x 1 ram option is identical to 16 x 2 ram timing.
spartan and spartan-xl families field programmable gate arrays 46 www.xilinx.com ds060 (v1.6) september 19, 2001 1-800-255-7778 product specification r spartan clb ram synchronous (edge-triggered) write operation guidelines (continued) testing of switching parameters is modeled after testing methods specified by mil-m-38510/605. all devices are 100% functionally tested. internal timing parameters are derived from measuring internal test patterns. listed below are representative values. for more specific, more precise, and worst-case guaranteed data, use the values reported by the static timing analyzer (trce in the xilinx develop- ment system) and back-annotated to the simulation netlist. all timing parameters assume worst-case operating condi- tions (supply voltage and junction temperature). values apply to all spartan devices and are expressed in nanosec- onds unless otherwise noted. spartan clb ram synchronous (edge-triggered) write timing dual-port ram synchronous (edge-triggered) write operation characteristics symbol dual port ram size (1) -4 -3 units min max min max write operation t wcds address write cycle time (clock k period) 16x1 8.0 - 11.6 - ns t wpds clock k pulse width (active edge) 16x1 4.0 - 5.8 - ns t asds address setup time before clock k 16x1 1.5 - 2.1 - ns t ahds address hold time after clock k 16x1 0 - 0 - ns t dsds din setup time before clock k 16x1 1.5 - 1.6 - ns t dhds din hold time after clock k 16x1 0 - 0 - ns t wsds we setup time before clock k 16x1 1.5 - 1.6 - ns t whds we hold time after clock k 16x1 0 - 0 - ns t wods data valid after clock k 16x1 - 6.5 - 7.0 ns notes: 1. read operation timing for 16 x 1 dual-port ram option is identical to 16 x 2 single-port ram timing single port dual port wclk (k) we address data in data out old new t dss t dhs t ass t ahs t wss t wps t whs t wsds t whds t wos t ilo t ilo ds060_34_011300 wclk (k) we address data in data out old new t dsds t dhds t asds t ahds t wpds t wods t ilo t ilo
spartan and spartan-xl families field programmable gate arrays ds060 (v1.6) september 19, 2001 www.xilinx.com 47 product specification 1-800-255-7778 r spartan pin-to-pin output parameter guidelines testing of switching parameters is modeled after testing methods specified by mil-m-38510/605. all devices are 100% functionally tested. pin-to-pin timing parameters are derived from measuring external and internal test patterns and are guaranteed over worst-case operating conditions (supply voltage and junction temperature). listed below are representative values for typical pin locations and normal clock loading. for more specific, more precise, and worst-case guaranteed data, reflecting the actual routing structure, use the values provided by the static timing ana- lyzer (trce in the xilinx development system) and back-annotated to the simulation netlist. these path delays, provided as a guideline, have been extracted from the static timing analyzer report. spartan output flip-flop, clock-to-out symbol description device speed grade units -4 -3 max max global primary clock to ttl output using off t ickof fast xcs05 5.3 8.7 ns xcs10 5.7 9.1 ns xcs20 6.1 9.3 ns xcs30 6.5 9.4 ns xcs40 6.8 10.2 ns t icko slew-rate limited xcs05 9.0 11.5 ns xcs10 9.4 12.0 ns xcs20 9.8 12.2 ns xcs30 10.2 12.8 ns xcs40 10.5 12.8 ns global secondary clock to ttl output using off t icksof fast xcs05 5.8 9.2 ns xcs10 6.2 9.6 ns xcs20 6.6 9.8 ns xcs30 7.0 9.9 ns xcs40 7.3 10.7 ns t ickso slew-rate limited xcs05 9.5 12.0 ns xcs10 9.9 12.5 ns xcs20 10.3 12.7 ns xcs30 10.7 13.2 ns xcs40 11.0 14.3 ns delay adder for cmos outputs option t cmosof fast all devices 0.8 1.0 ns t cmoso slew-rate limited all devices 1.5 2.0 ns notes: 1. listed above are representative values where one global clock input drives one vertical clock line in each accessible column, and where all accessible iob and clb flip-flops are clocked by the global clock net. 2. output timing is measured at ~50% v cc threshold with 50 pf external capacitive load. for different loads, see figure 33 . 3. off = output flip-flop
spartan and spartan-xl families field programmable gate arrays 48 www.xilinx.com ds060 (v1.6) september 19, 2001 1-800-255-7778 product specification r capacitive load factor figure 33 shows the relationship between i/o output delay and load capacitance. it allows a user to adjust the specified output delay if the load capacitance is different than 50 pf. for example, if the actual load capacitance is 120 pf, add 2.5 ns to the specified delay. if the load capacitance is 20 pf, subtract 0.8 ns from the specified output delay. figure 33 is usable over the specified operating conditions of voltage and temperature and is independent of the output slew rate control. figure 34: delay factor at various capacitive loads ds060_35_080400 -2 0 20406080 capacitance (pf) delta delay (ns) 100 120 140 -1 0 1 2 3
spartan and spartan-xl families field programmable gate arrays ds060 (v1.6) september 19, 2001 www.xilinx.com 49 product specification 1-800-255-7778 r spartan pin-to-pin input parameter guidelines testing of switching parameters is modeled after testing methods specified by mil-m-38510/605. all devices are 100% functionally tested. pin-to-pin timing parameters are derived from measuring external and internal test patterns and are guaranteed over worst-case operating conditions (supply voltage and junction temperature). listed below are representative values for typical pin locations and normal clock loading. spartan primary and secondary setup and hold symbol description device speed grade units -4 -3 min min input setup/hold times using primary clock and iff t psuf /t phf no delay xcs05 1.2 / 1.7 1.8 / 2.5 ns xcs10 1.0 / 2.3 1.5 / 3.4 ns xcs20 0.8 / 2.7 1.2 / 4.0 ns xcs30 0.6 / 3.0 0.9 / 4.5 ns xcs40 0.4 / 3.5 0.6 / 5.2 ns t psu /t ph with delay xcs05 4.3 / 0.0 6.0 / 0.0 ns xcs10 4.3 / 0.0 6.0 / 0.0 ns xcs20 4.3 / 0.0 6.0 / 0.0 ns xcs30 4.3 / 0.0 6.0 / 0.0 ns xcs40 5.3 / 0.0 6.8 / 0.0 ns input setup/hold times using secondary clock and iff t ssuf /t shf no delay xcs05 0.9 / 2.2 1.5 / 3.0 ns xcs10 0.7 / 2.8 1.2 / 3.9 ns xcs20 0.5 / 3.2 0.9 / 4.5 ns xcs30 0.3 / 3.5 0.6 / 5.0 ns xcs40 0.1 / 4.0 0.3 / 5.7 ns t ssu /t sh with delay xcs05 4.0 / 0.0 5.7 / 0.0 ns xcs10 4.0 / 0.0 5.7 / 0.0 ns xcs20 4.0 / 0.5 5.7 / 0.5 ns xcs30 4.0 / 0.5 5.7 / 0.5 ns xcs40 5.0 / 0.0 6.5 / 0.0 ns notes: 1. setup time is measured with the fastest route and the lightest load. hold time is measured using the furthest distance and a reference load of one clock pin per iob/clb. 2. iff = input flip-flop or latch
spartan and spartan-xl families field programmable gate arrays 50 www.xilinx.com ds060 (v1.6) september 19, 2001 1-800-255-7778 product specification r spartan iob input switching characteristic guidelines testing of switching parameters is modeled after testing methods specified by mil-m-38510/605. all devices are 100% functionally tested. internal timing parameters are derived from measuring internal test patterns. listed below are representative values. for more specific, more precise, and worst-case guaranteed data, use the values reported by the static timing analyzer (trce in the xilinx develop- ment system) and back-annotated to the simulation netlist. these path delays, provided as a guideline, have been extracted from the static timing analyzer report. all timing parameters assume worst-case operating conditions (sup- ply voltage and junction temperature). symbol description device speed grade units -4 -3 min max min max setup times - ttl inputs (1) t ecik clock enable (ec) to clock (ik), no delay all devices 1.6 - 2.1 - ns t pick pad to clock (ik), no delay all devices 1.5 - 2.0 - ns hold times t ikec clock enable (ec) to clock (ik), no delay all devices 0.0 - 0.9 - ns all other hold times all devices 0.0 - 0.0 - ns propagation delays - ttl inputs (1) t pid pad to i1, i2 all devices - 1.5 - 2.0 ns t pli pad to i1, i2 via transparent input latch, no delay all devices - 2.8 - 3.6 ns t ikri clock (ik) to i1, i2 (flip-flop) all devices - 2.7 - 2.8 ns t ikli clock (ik) to i1, i2 (latch enable, active low) all devices - 3.2 - 3.9 ns delay adder for input with delay option t delay t ecikd = t ecik + t delay t pickd = t pick + t delay t pdli = t pli + t delay xcs05 3.6 - 4.0 - ns xcs10 3.7 - 4.1 - ns xcs20 3.8 - 4.2 - ns xcs30 4.5 - 5.0 - ns xcs40 5.5 - 5.5 - ns global set/reset t mrw minimum gsr pulse width all devices 11.5 - 13.5 - ns t rri delay from gsr input to any q xcs05 - 9.0 - 11.3 ns xcs10 - 9.5 - 11.9 ns xcs20 - 10.0 - 12.5 ns xcs30 - 10.5 - 13.1 ns xcs40 - 11.0 - 13.8 ns notes: 1. delay adder for cmos inputs option: for -3 speed grade, add 0.4 ns; for -4 speed grade, add 0.2 ns. 2. input pad setup and hold times are specified with respect to the internal clock (ik). for setup and hold times with respect t o the clock input, see the pin-to-pin parameters in the pin-to-pin input parameters table. 3. voltage levels of unused pads, bonded or unbonded, must be valid logic levels. each can be configured with the internal pull- up (default) or pull-down resistor, or configured as a driven output, or can be driven from an external source.
spartan and spartan-xl families field programmable gate arrays ds060 (v1.6) september 19, 2001 www.xilinx.com 51 product specification 1-800-255-7778 r spartan iob output switching characteristic guidelines testing of switching parameters is modeled after testing methods specified by mil-m-38510/605. all devices are 100% functionally tested. internal timing parameters are derived from measuring internal test patterns. listed below are representative values. for more specific, more precise, and worst-case guaranteed data, use the values reported by the static timing analyzer (trce in the xilinx develop- ment system) and back-annotated to the simulation netlist. these path delays, provided as a guideline, have been extracted from the static timing analyzer report. all timing parameters assume worst-case operating conditions (sup- ply voltage and junction temperature). values are expressed in nanoseconds unless otherwise noted. symbol description device speed grade units -4 -3 min max min max clocks t ch clock high all devices 3.0 - 4.0 - ns t cl clock low all devices 3.0 - 4.0 - ns propagation delays - ttl outputs (1,2) t okpof clock (ok) to pad, fast all devices - 3.3 - 4.5 ns t okpos clock (ok to pad, slew-rate limited all devices - 6.9 - 7.0 ns t opf output (o) to pad, fast all devices - 3.6 - 4.8 ns t ops output (o) to pad, slew-rate limited all devices - 7.2 - 7.3 ns t tshz 3-state to pad high-z (slew-rate independent) all devices - 3.0 - 3.8 ns t tsonf 3-state to pad active and valid, fast all devices - 6.0 - 7.3 ns t tsons 3-state to pad active and valid, slew-rate limited all devices - 9.6 - 9.8 ns setup and hold times t ook output (o) to clock (ok) setup time all devices 2.5 - 3.8 - ns t oko output (o) to clock (ok) hold time all devices 0.0 - 0.0 - ns t ecok clock enable (ec) to clock (ok) setup time all devices 2.0 - 2.7 - ns t okec clock enable (ec) to clock (ok) hold time all devices 0.0 - 0.5 - ns global set/reset t mrw minimum gsr pulse width all devices 11.5 13.5 ns t rpo delay from gsr input to any pad xcs05 - 12.0 - 15.0 ns xcs10 - 12.5 - 15.7 ns xcs20 - 13.0 - 16.2 ns xcs30 - 13.5 - 16.9 ns xcs40 - 14.0 - 17.5 ns notes: 1. delay adder for cmos outputs option (with fast slew rate option): for -3 speed grade, add 1.0 ns; for -4 speed grade, add 0.8 ns. 2. delay adder for cmos outputs option (with slow slew rate option): for -3 speed grade, add 2.0 ns; for -4 speed grade, add 1.5 ns. 3. output timing is measured at ~50% v cc threshold, with 50 pf external capacitive loads including test fixture. slew-rate limited output rise/fall times are approximately two times longer than fast output rise/fall times. 4. voltage levels of unused pads, bonded or unbonded, must be valid logic levels. each can be configured with the internal pull- up (default) or pull-down resistor, or configured as a driven output, or can be driven from an external source.
spartan and spartan-xl families field programmable gate arrays 52 www.xilinx.com ds060 (v1.6) september 19, 2001 1-800-255-7778 product specification r spartan-xl detailed specifications definition of terms in the following tables, some specifications may be designated as advance or preliminary. these terms are defined as follows: advance: initial estimates based on simulation and/or extrapolation from other speed grades, devices, or device families. values are subject to change. use as estimates, not for production. preliminary: based on preliminary characterization. further changes are not expected. unmarked: specifications not identified as either advance or preliminary are to be considered final. notwithstanding the definition of the above terms, all specifications are subject to change without notice. except for pin-to-pin input and output parameters, the ac parameter delay specifications included in this document are derived from measuring internal test patterns. all specifications are representative of worst-case supply voltage and junction temperature conditions. the parameters included are common to popular designs and typical applications. spartan-xl absolute maximum ratings (1) spartan-xl recommended operating conditions symbol description value units v cc supply voltage relative to gnd ? 0.5 to 4.0 v v in input voltage relative to gnd 5v tolerant i/o checked (2, 3) ? 0.5 to 5.5 v not 5v tolerant i/os (4, 5) ? 0.5 to v cc + 0.5 v v ts voltage applied to 3-state output 5v tolerant i/o checked (2, 3) ? 0.5 to 5.5 v not 5v tolerant i/os (4, 5) ? 0.5 to v cc + 0.5 v t stg storage temperature (ambient) ? 65 to +150 c t j junction temperature plastic packages +125 c notes: 1. stresses beyond those listed under absolute maximum ratings may cause permanent damage to the device. these are stress ratings only, and functional operation of the device at these or any other conditions beyond those listed under operating condi tions is not implied. exposure to absolute maximum ratings conditions for extended periods of time may affect device reliability. 2. with 5v tolerant i/os selected, the maximum dc overshoot must be limited to either +5.5v or 10 ma and undershoot (below gnd) must be limited to either 0.5v or 10 ma, whichever is easier to achieve. 3. with 5v tolerant i/os selected, the maximum ac (during transitions) conditions are as follows; the device pins may undershoot to ? 2.0v or overshoot to + 7.0v, provided this overshoot or undershoot lasts no more than 11 ns with a forcing current no greater t han 100 ma. 4. without 5v tolerant i/os selected, the maximum dc overshoot or undershoot must be limited to either 0.5v or 10 ma, whichever is easier to achieve. 5. without 5v tolerant i/os selected, the maximum ac conditions are as follows; the device pins may undershoot to ? 2.0v or overshoot to v cc + 2.0v, provided this overshoot or undershoot lasts no more than 11 ns with a forcing current no greater than 100 ma. 6. for soldering guidelines, see the package infomation on the xilinx website. symbol description min max units v cc supply voltage relative to gnd, t j = 0 c to +85 c commercial 3.0 3.6 v supply voltage relative to gnd, t j = ? 40 c to +100 c (1) industrial 3.0 3.6 v v ih high-level input voltage (2) 50% of v cc 5.5 v v il low-level input voltage (2) 030% of v cc v t in input signal transition time - 250 ns notes: 1. at junction temperatures above those listed as operating conditions, all delay parameters increase by 0.35% per c. 2. input and output measurement threshold is ~50% of v cc .
spartan and spartan-xl families field programmable gate arrays ds060 (v1.6) september 19, 2001 www.xilinx.com 53 product specification 1-800-255-7778 r spartan-xl dc characteristics over operating conditions supply current requirements during power-on spartan-xl fpgas require that a minimum supply current i ccpo be provided to the v cc lines for a successful power on. if more current is available, the fpga can consume more than i ccpo min., though this cannot adversely affect reliability. a maximum limit for i ccpo is not specified. be careful when using foldback/crowbar supplies and fuses. it is possible to control the magnitude of i ccpo by limiting the supply current available to the fpga. a current limit below the trip level will avoid inadvertently activating over-current protection cir- cuits. symbol description min typ. max units v oh high-level output voltage @ i oh = ? 4.0 ma, v cc min (lvttl) 2.4 - - v high-level output voltage @ i oh = ? 500 a, (lvcmos) 90% v cc --v v ol low-level output voltage @ i ol = 12.0 ma, v cc min (lvttl) (1) --0.4v low-level output voltage @ i ol = 24.0 ma, v cc min (lvttl) (2) --0.4v low-level output voltage @ i ol = 1500 a, (lvcmos) - - 10% v cc v v dr data retention supply voltage (below which configuration data may be lost) 2.5 - - v i cco quiescent fpga supply current (3,4) commercial - 0.1 2.5 ma industrial - 0.1 5 ma i ccpd power down fpga supply current (3,5) commercial - 0.1 2.5 ma industrial - 0.1 5 ma i l input or output leakage current ? 10 - 10 a c in input capacitance (sample tested) - - 10 pf i rpu pad pull-up (when selected) @ v in = 0v (sample tested) 0.02 - 0.25 ma i rpd pad pull-down (when selected) @ v in = 3.3v (sample tested) 0.02 - - ma notes: 1. with up to 64 pins simultaneously sinking 12 ma (default mode). 2. with up to 64 pins simultaneously sinking 24 ma (with 24 ma option selected). 3. with 5v tolerance not selected, no internal oscillators, and the fpga configured with the tie option. 4. with no output current loads, no active input resistors, and all package pins at v cc or gnd. 5. with pwrdwn active. symbol description min max units i ccpo to t a l v cc supply current required during power-on 100 - ma t ccpo v cc ramp time (2,3) -50ms notes: 1. the i ccpo requirement applies for a brief time (commonly only a few milliseconds) when v cc ramps from 0 to 3.3v. 2. the ramp time is measured from gnd to v cc max on a fully loaded board. 3. v cc must not dip in the negative direction during power on.
spartan and spartan-xl families field programmable gate arrays 54 www.xilinx.com ds060 (v1.6) september 19, 2001 1-800-255-7778 product specification r spartan-xl global buffer switching characteristic guidelines testing of the switching parameters is modeled after testing methods specified by mil-m-38510/605. all devices are 100% functionally tested. internal timing parameters are derived from measuring internal test patterns. listed below are representative values where one global clock input drives one vertical clock line in each accessible column, and where all accessible iob and clb flip-flops are clocked by the global clock net. when fewer vertical clock lines are connected, the clock dis- tribution is faster; when multiple clock lines per column are driven from the same global clock, the delay is longer. for more specific, more precise, and worst-case guaranteed data, reflecting the actual routing structure, use the values provided by the static timing analyzer (trce in the xilinx development system) and back-annotated to the simulation netlist. these path delays, provided as a guideline, have been extracted from the static timing analyzer report. all timing parameters assume worst-case operating conditions (supply voltage and junction temperature). symbol description device speed grade units -5 -4 max max t gls from pad through buffer, to any clock k xcs05xl 1.4 1.5 ns xcs10xl 1.7 1.8 ns xcs20xl 2.0 2.1 ns xcs30xl 2.3 2.5 ns xcs40xl 2.6 2.8 ns
spartan and spartan-xl families field programmable gate arrays ds060 (v1.6) september 19, 2001 www.xilinx.com 55 product specification 1-800-255-7778 r spartan-xl clb switching characteristic guidelines testing of switching parameters is modeled after testing methods specified by mil-m-38510/605. all devices are 100% functionally tested. internal timing parameters are derived from measuring internal test patterns. listed below are representative values. for more specific, more precise, and worst-case guaranteed data, use the values reported by the static timing analyzer (trce in the xilinx develop- ment system) and back-annotated to the simulation netlist. all timing parameters assume worst-case operating condi- tions (supply voltage and junction temperature). values apply to all spartan-xl devices and expressed in nanosec- onds unless otherwise noted. symbol description speed grade units -5 -4 min max min max clocks t ch clock high time 2.0 - 2.3 - ns t cl clock low time 2.0 - 2.3 - ns combinatorial delays t ilo f/g inputs to x/y outputs - 1.0 - 1.1 ns t iho f/g inputs via h to x/y outputs - 1.7 - 2.0 ns t ito f/g inputs via transparent latch to q outputs - 1.5 - 1.8 ns t hh1o c inputs via h1 via h to x/y outputs - 1.5 - 1.8 ns sequential delays t cko clock k to flip-flop or latch outputs q - 1.2 - 1.4 ns setup time before clock k t ick f/g inputs 0.6 - 0.7 - ns t ihck f/g inputs via h 1.3 - 1.6 - ns hold time after clock k all hold times, all devices 0.0 - 0.0 - ns set/reset direct t rpw width (high) 2.5 - 2.8 - ns t rio delay from c inputs via s/r, going high to q - 2.3 - 2.7 ns global set/reset t mrw minimum gsr pulse width 10.5 - 11.5 - ns t mrq delay from gsr input to any q see page 60 for t rri values per device. f tog toggle frequency (mhz) (for export control purposes) -250-217mhz
spartan and spartan-xl families field programmable gate arrays 56 www.xilinx.com ds060 (v1.6) september 19, 2001 1-800-255-7778 product specification r spartan-xl clb ram synchronous (edge-triggered) write operation guidelines testing of switching parameters is modeled after testing methods specified by mil-m-38510/605. all devices are 100% functionally tested. internal timing parameters are derived from measuring internal test patterns. listed below are representative values. for more specific, more precise, and worst-case guaranteed data, use the values reported by the static timing analyzer (trce in the xilinx develop- ment system) and back-annotated to the simulation netlist. all timing parameters assume worst-case operating condi- tions (supply voltage and junction temperature). values apply to all spartan-xl devices and are expressed in nano- seconds unless otherwise noted. symbol single port ram size (1) speed grade units -5 -4 min max min max write operation t wcs address write cycle time (clock k period) 16x2 7.7 - 8.4 - ns t wcts 32x1 7.7 - 8.4 - ns t wps clock k pulse width (active edge) 16x2 3.1 - 3.6 - ns t wpts 32x1 3.1 - 3.6 - ns t ass address setup time before clock k 16x2 1.3 - 1.5 - ns t asts 32x1 1.5 - 1.7 - ns t dss din setup time before clock k 16x2 1.5 - 1.7 - ns t dsts 32x1 1.8 - 2.1 - ns t wss we setup time before clock k 16x2 1.4 - 1.6 - ns t wsts 32x1 1.3 - 1.5 - ns all hold times after clock k 16x2 0.0 - 0.0 - ns t wos data valid after clock k 32x1 - 4.5 - 5.3 ns t wots 16x2 - 5.4 - 6.3 ns read operation t rc address read cycle time 16x2 2.6 - 3.1 - ns t rct 32x1 3.8 - 5.5 - ns t ilo data valid after address change (no write enable) 16x2 - 1.0 - 1.1 ns t iho 32x1 - 1.7 - 2.0 ns t ick address setup time before clock k 16x2 0.6 - 0.7 - ns t ihck 32x1 1.3 - 1.6 - ns notes: 1. timing for 16 x 1 ram option is identical to 16 x 2 ram timing.
spartan and spartan-xl families field programmable gate arrays ds060 (v1.6) september 19, 2001 www.xilinx.com 57 product specification 1-800-255-7778 r spartan-xl clb ram synchronous (edge-triggered) write operation guidelines (cont.) testing of switching parameters is modeled after testing methods specified by mil-m-38510/605. all devices are 100% functionally tested. internal timing parameters are derived from measuring internal test patterns. listed below are representative values. for more specific, more precise, and worst-case guaranteed data, use the values reported by the static timing analyzer (trce in the xilinx develop- ment system) and back-annotated to the simulation netlist. all timing parameters assume worst-case operating condi- tions (supply voltage and junction temperature). values apply to all spartan-xl devices and are expressed in nano- seconds unless otherwise noted. spartan-xl clb ram synchronous (edge-triggered) write timing symbol dual port ram size -5 -4 units min max min max write operation (1) t wcds address write cycle time (clock k period) 16x1 7.7 - 8.4 - ns t wpds clock k pulse width (active edge) 16x1 3.1 - 3.6 - ns t asds address setup time before clock k 16x1 1.3 - 1.5 - ns t dsds din setup time before clock k 16x1 1.7 - 2.0 - ns t wsds we setup time before clock k 16x1 1.4 - 1.6 - ns all hold times after clock k 16x1 0 - 0 - ns t wods data valid after clock k 16x1 - 5.2 - 6.1 ns notes: 1. read operation timing for 16 x 1 dual-port ram option is identical to 16 x 2 single-port ram timing single port dual port wclk (k) we address data in data out old new t dss t dhs t ass t ahs t wss t wps t whs t wsds t whds t wos t ilo t ilo ds060_34_011300 wclk (k) we address data in data out old new t dsds t dhds t asds t ahds t wpds t wods t ilo t ilo
spartan and spartan-xl families field programmable gate arrays 58 www.xilinx.com ds060 (v1.6) september 19, 2001 1-800-255-7778 product specification r spartan-xl pin-to-pin output parameter guidelines testing of switching parameters is modeled after testing methods specified by mil-m-38510/605. all devices are 100% functionally tested. pin-to-pin timing parameters are derived from measuring external and internal test patterns and are guaranteed over worst-case operating conditions (supply voltage and junction temperature). listed below are representative values for typical pin locations and normal clock loading. spartan-xl output flip-flop, clock-to-out symbol description device speed grade units -5 -4 max max global clock to output using off t ickof fast xcs05xl 4.6 5.2 ns xcs10xl 4.9 5.5 ns xcs20xl 5.2 5.8 ns xcs30xl 5.5 6.2 ns xcs40xl 5.8 6.5 ns slew rate adjustment t slow for output slow option add all devices 1.5 1.7 ns notes: 1. output delays are representative values where one global clock input drives one vertical clock line in each accessible column ,and where all accessible iob and clb flip-flops are clocked by the global clock net. 2. output timing is measured at ~50% v cc threshold with 50 pf external capacitive load. 3. off = output flip flop
spartan and spartan-xl families field programmable gate arrays ds060 (v1.6) september 19, 2001 www.xilinx.com 59 product specification 1-800-255-7778 r spartan-xl pin-to-pin input parameter guidelines testing of switching parameters is modeled after testing methods specified by mil-m-38510/605. all devices are 100% functionally tested. pin-to-pin timing parameters are derived from measuring external and internal test patterns and are guaranteed over worst-case operating conditions (supply voltage and junction temperature). listed below are representative values for typical pin locations and normal clock loading. spartan-xl setup and hold capacitive load factor figure 35 shows the relationship between i/o output delay and load capacitance. it allows a user to adjust the specified output delay if the load capacitance is different than 50 pf. for example, if the actual load capacitance is 120 pf, add 2.5 ns to the specified delay. if the load capacitance is 20 pf, subtract 0.8 ns from the specified output delay. figure 35 is usable over the specified operating conditions of voltage and temperature and is independent of the output slew rate control. symbol description device speed grade units -5 -4 max max input setup/hold times using global clock and iff t suf /t hf no delay xcs05xl 1.1/2.0 1.6/2.6 ns xcs10xl 1.0/2.2 1.5/2.8 ns xcs20xl 0.9/2.4 1.4/3.0 ns xcs30xl 0.8/2.6 1.3/3.2 ns xcs40xl 0.7/2.8 1.2/3.4 ns t su /t h full delay xcs05xl 3.9/0.0 5.1/0.0 ns xcs10xl 4.1/0.0 5.3/0.0 ns xcs20xl 4.3/0.0 5.5/0.0 ns xcs30xl 4.5/0.0 5.7/0.0 ns xcs40xl 4.7/0.0 5.9/0.0 ns notes: 1. iff = input flip-flop or latch 2. setup time is measured with the fastest route and the lightest load. hold time is measured using the furthest distance and a reference load of one clock pin per iob/clb. figure 35: delay factor at various capacitive loads ds060_35_080400 -2 0 20406080 capacitance (pf) delta delay (ns) 100 120 140 -1 0 1 2 3
spartan and spartan-xl families field programmable gate arrays 60 www.xilinx.com ds060 (v1.6) september 19, 2001 1-800-255-7778 product specification r spartan-xl iob input switching characteristic guidelines testing of switching parameters is modeled after testing methods specified by mil-m-38510/605. all devices are 100% functionally tested. internal timing parameters are derived from measuring internal test patterns. listed below are representative values. for more specific, more precise, and worst-case guaranteed data, use the values reported by the static timing analyzer (trce in the xilinx develop- ment system) and back-annotated to the simulation netlist. these path delays, provided as a guideline, have been extracted from the static timing analyzer report. all timing parameters assume worst-case operating conditions (sup- ply voltage and junction temperature). symbol device speed grade units -5 -4 description min max min max setup times t ecik clock enable (ec) to clock (ik) all devices 0.0 - 0.0 - ns t pick pad to clock (ik), no delay all devices 1.0 - 1.2 - ns t pock pad to fast capture latch enable (ok), no delay all devices 0.7 - 0.8 - ns hold times all hold times all devices 0.0 - 0.0 - ns propagation delays t pid pad to i1, i2 all devices - 0.9 - 1.1 ns t pli pad to i1, i2 via transparent input latch, no delay all devices - 2.1 - 2.5 ns t ikri clock (ik) to i1, i2 (flip-flop) all devices - 1.0 - 1.1 ns t ikli clock (ik) to i1, i2 (latch enable, active low) all devices - 1.1 - 1.2 ns delay adder for input with full delay option t delay t pickd = t pick + t delay t pdli = t pli + t delay xcs05xl 4.0 - 4.7 - ns xcs10xl 4.8 - 5.6 - ns xcs20xl 5.0 - 5.9 - ns xcs30xl 5.5 - 6.5 - ns xcs40xl 6.5 - 7.6 - ns global set/reset t mrw minimum gsr pulse width all devices 10.5 - 11.5 - ns t rri delay from gsr input to any q xcs05xl - 9.0 - 10.5 ns xcs10xl - 9.5 - 11.0 ns xcs20xl - 10.0 - 11.5 ns xcs30xl - 11.0 - 12.5 ns xcs40xl - 12.0 - 13.5 ns notes: 1. input pad setup and hold times are specified with respect to the internal clock (ik). for setup and hold times with respect t o the clock input, see the pin-to-pin parameters in the pin-to-pin input parameters table. 2. voltage levels of unused pads, bonded or unbonded, must be valid logic levels. each can be configured with the internal pull- up (default) or pull-down resistor, or configured as a driven output, or can be driven from an external source.
spartan and spartan-xl families field programmable gate arrays ds060 (v1.6) september 19, 2001 www.xilinx.com 61 product specification 1-800-255-7778 r spartan-xl iob output switching characteristic guidelines testing of switching parameters is modeled after testing methods specified by mil-m-38510/605. all devices are 100% functionally tested. internal timing parameters are derived from measuring internal test patterns. listed below are representative values. for more specific, more precise, and worst-case guaranteed data, use the values reported by the static timing analyzer (trce in the xilinx develop- ment system) and back-annotated to the simulation netlist. these path delays, provided as a guideline, have been extracted from the static timing analyzer report. all timing parameters assume worst-case operating conditions (sup- ply voltage and junction temperature). values are expressed in nanoseconds unless otherwise noted. symbol description device speed grade units -5 -4 min max min max propagation delays t okpof clock (ok) to pad, fast all devices - 3.2 - 3.7 ns t opf output (o) to pad, fast all devices - 2.5 - 2.9 ns t tshz 3-state to pad high-z (slew-rate independent) all devices - 2.8 - 3.3 ns t tsonf 3-state to pad active and valid, fast all devices - 2.6 - 3.0 ns t ofpf output (o) to pad via output mux, fast all devices - 3.7 - 4.4 ns t okfpf select (ok) to pad via output mux, fast all devices - 3.3 - 3.9 ns t slow for output slow option add all devices - 1.5 - 1.7 ns setup and hold times t ook output (o) to clock (ok) setup time all devices 0.5 - 0.5 - ns t oko output (o) to clock (ok) hold time all devices 0.0 - 0.0 - ns t ecok clock enable (ec) to clock (ok) setup time all devices 0.0 - 0.0 - ns t okec clock enable (ec) to clock (ok) hold time all devices 0.1 - 0.2 - ns global set/reset t mrw minimum gsr pulse width all devices 10.5 - 11.5 - ns t rpo delay from gsr input to any pad xcs05xl - 11.9 - 14.0 ns xcs10xl - 12.4 - 14.5 ns xcs20xl - 12.9 - 15.0 ns xcs30xl - 13.9 - 16.0 ns xcs40xl - 14.9 - 17.0 ns notes: 1. output timing is measured at ~50% v cc threshold, with 50 pf external capacitive loads including test fixture. slew-rate limited output rise/fall times are approximately two times longer than fast output rise/fall times. 2. voltage levels of unused pads, bonded or unbonded, must be valid logic levels. each can be configured with the internal pull- up (default) or pull-down resistor, or configured as a driven output, or can be driven from an external source.
spartan and spartan-xl families field programmable gate arrays 62 www.xilinx.com ds060 (v1.6) september 19, 2001 1-800-255-7778 product specification r pin descriptions there are three types of pins in the spartan/xl devices:  permanently dedicated pins  user i/o pins that can have special functions  unrestricted user-programmable i/o pins. before and during configuration, all outputs not used for the configuration process are 3-stated with the i/o pull-up resis- tor network activated. after configuration, if an iob is unused it is configured as an input with the i/o pull-up resis- tor network remaining activated. any user i/o can be configured to drive the global set/reset net gsr or the global three-state net gts. see global signals: gsr and gts , page 20 for more informa- tion. device pins for spartan/xl devices are described in ta ble 1 8 . table 18: pin descriptions pin name i/o during config. i/o after config. pin description permanently dedicated pins v cc x x eight or more (depending on package) connections to the nominal +5v supply voltage (+3.3v for spartan-xl devices). all must be connected, and each must be decoupled with a 0.01 ? 0.1 f capacitor to ground. gnd x x eight or more (depending on package type) connections to ground. all must be connected. cclk i or o i during configuration, configuration clock (cclk) is an output in master mode and is an input in slave mode. after configuration, cclk has a weak pull-up resistor and can be selected as the readback clock. there is no cclk high or low time restriction on spartan/xl devices, except during readback. see violating the maximum high and low time specification for the readback clock , page 39 for an explanation of this exception. done i/o o done is a bidirectional signal with an optional internal pull-up resistor. as an open-drain output, it indicates the completion of the configuration process. as an input, a low level on done can be configured to delay the global logic initialization and the enabling of outputs. the optional pull-up resistor is selected as an option in the program that creates the configuration bitstream. the resistor is included by default. program i i program is an active low input that forces the fpga to clear its configuration memory. it is used to initiate a configuration cycle. when program goes high, the fpga finishes the current clear cycle and executes another complete clear cycle, before it goes into a wait state and releases init . the program pin has a permanent weak pull-up, so it need not be externally pulled up to vcc. mode (spartan) m0, m1 (spartan-xl) i x the mode input(s) are sampled after init goes high to determine the configuration mode to be used. during configuration, these pins have a weak pull-up resistor. for the most popular configuration mode, slave serial, the mode pins can be left unconnected. for master serial mode, connect the mode/m0 pin directly to system ground.
spartan and spartan-xl families field programmable gate arrays ds060 (v1.6) september 19, 2001 www.xilinx.com 63 product specification 1-800-255-7778 r pwrdwn iipwrdwn is an active low input that forces the fpga into the power down state and reduces power consumption. when pwrdwn is low, the fpga disables all i/o and initializes all flip-flops. all inputs are interpreted as low independent of their actual level. vcc must be maintained, and the configuration data is maintained. pwrdwn halts configuration if asserted before or during configuration, and re-starts configuration when removed. when pwrdwn returns high, the fpga becomes operational by first enabling the inputs and flip-flops and then enabling the outputs. pwrdwn has a default internal pull-up resistor. user i/o pins that can have special functions tdo o o if boundary scan is used, this pin is the test data output. if boundary scan is not used, this pin is a 3-state output without a register, after configuration is completed. to use this pin, place the library component tdo instead of the usual pad symbol. an output buffer must still be used. tdi, tck, tms i i/o or i (jtag) if boundary scan is used, these pins are test data in, test clock, and test mode select inputs respectively. they come directly from the pads, bypassing the iobs. these pins can also be used as inputs to the clb logic after configuration is completed. if the bscan symbol is not placed in the design, all boundary scan functions are inhibited once configuration is completed, and these pins become user-programmable i/o. in this case, they must be called out by special library elements. to use these pins, place the library components tdi, tck, and tms instead of the usual pad symbols. input or output buffers must still be used. hdc o i/o high during configuration (hdc) is driven high until the i/o go active. it is available as a control output indicating that configuration is not yet completed. after configuration, hdc is a user-programmable i/o pin. ldc o i/o low during configuration (ldc ) is driven low until the i/o go active. it is available as a control output indicating that configuration is not yet completed. after configuration, ldc is a user-programmable i/o pin. init i/o i/o before and during configuration, init is a bidirectional signal. a 1 k ? to 10 k ? external pull-up resistor is recommended. as an active low open-drain output, init is held low during the power stabilization and internal clearing of the configuration memory. as an active low input, it can be used to hold the fpga in the internal wait state before the start of configuration. master mode devices stay in a wait state an additional 30 to 300 s after init has gone high. during configuration, a low on this output indicates that a configuration data error has occurred. after the i/o go active, init is a user-programmable i/o pin. pgck1 - pgck4 (spartan) weak pull-up i or i/o four primary global inputs each drive a dedicated internal global net with short delay and minimal skew. if not used to drive a global buffer, any of these pins is a user-programmable i/o. the pgck1-pgck4 pins drive the four primary global buffers. any input pad symbol connected directly to the input of a bufgp symbol is automatically placed on one of these pins. table 18: pin descriptions (continued) pin name i/o during config. i/o after config. pin description
spartan and spartan-xl families field programmable gate arrays 64 www.xilinx.com ds060 (v1.6) september 19, 2001 1-800-255-7778 product specification r sgck1 - sgck4 (spartan) weak pull-up (except sgck4 is dout) i or i/o four secondary global inputs each drive a dedicated internal global net with short delay and minimal skew. these internal global nets can also be driven from internal logic. if not used to drive a global net, any of these pins is a user-programmable i/o pin. the sgck1-sgck4 pins provide the shortest path to the four secondary global buffers. any input pad symbol connected directly to the input of a bufgs symbol is automatically placed on one of these pins. gck1 - gck8 (spartan-xl) weak pull-up (except gck6 is dout) i or i/o eight global inputs each drive a dedicated internal global net with short delay and minimal skew. these internal global nets can also be driven from internal logic. if not used to drive a global net, any of these pins is a user-programmable i/o pin. the gck1-gck8 pins provide the shortest path to the eight global low-skew buffers. any input pad symbol connected directly to the input of a bufgls symbol is automatically placed on one of these pins. cs1 (spartan-xl) i i/o during express configuration, cs1 is used as a serial-enable signal for daisy-chaining. d0-d7 (spartan-xl) i i/o during express configuration, these eight input pins receive configuration data. after configuration, they are user-programmable i/o pins. din i i/o during slave serial or master serial configuration, din is the serial configuration data input receiving data on the rising edge of cclk. after configuration, din is a user-programmable i/o pin. dout o i/o during slave serial or master serial configuration, dout is the serial configuration data output that can drive the din of daisy-chained slave fpgas. dout data changes on the falling edge of cclk, one-and-a-half cclk periods after it was received at the din input. in spartan-xl express mode, dout is the status output that can drive the cs1 of daisy-chained fpgas, to enable and disable downstream devices. after configuration, dout is a user-programmable i/o pin. unrestricted user-programmable i/o pins i/o weak pull-up i/o these pins can be configured to be input and/or output after configuration is completed. before configuration is completed, these pins have an internal high-value pull-up resistor network that defines the logic level as high. table 18: pin descriptions (continued) pin name i/o during config. i/o after config. pin description
spartan and spartan-xl families field programmable gate arrays ds060 (v1.6) september 19, 2001 www.xilinx.com 65 product specification 1-800-255-7778 r device-specific pinout tables device-specific tables include all packages for each spar- tan and spartan-xl device. they follow the pad locations around the die, and include boundary scan register loca- tions. xcs05 and xcs05xl device pinouts xcs05/xl pad name pc84 vq100 bndry scan vcc p2 p89 - i/o p3 p90 32 i/o p4 p91 35 i/o - p92 38 i/o - p93 41 i/o p5 p94 44 i/o p6 p95 47 i/o p7 p96 50 i/o p8 p97 53 i/o p9 p98 56 i/o, sgck1 (1) , gck8 (2) p10 p99 59 vcc p11 p100 - gnd p12 p1 - i/o, pgck1 (1) , gck1 (2) p13 p2 62 i/o p14 p3 65 i/o, tdi p15 p4 68 i/o, tck p16 p5 71 i/o, tms p17 p6 74 i/o p18 p7 77 i/o - p8 83 i/o p19 p9 86 i/o p20 p10 89 gnd p21 p11 - vcc p22 p12 - i/o p23 p13 92 i/o p24 p14 95 i/o - p15 98 i/o p25 p16 104 i/o p26 p17 107 i/o p27 p18 110 i/o - p19 113 i/o p28 p20 116 i/o, sgck2 (1) , gck2 (2) p29 p21 119 not connected (1) , m1 (2) p30 p22 122 gnd p31 p23 - mode (1) , m0 (2) p32 p24 125 vcc p33 p25 - not connected (1) , pwrdwn (2) p34 p26 126 (1) i/o, pgck2 (1) , gck3 (2) p35 p27 127 (3) i/o (hdc) p36 p28 130 (3) i/o - p29 133 (3) i/o (ldc ) p37 p30 136 (3) i/o p38 p31 139 (3) i/o p39 p32 142 (3) i/o - p33 145 (3) i/o - p34 148 (3) i/o p40 p35 151 (3) i/o (init ) p41 p36 154 (3) vcc p42 p37 - gnd p43 p38 - i/o p44 p39 157 (3) i/o p45 p40 160 (3) i/o - p41 163 (3) i/o - p42 166 (3) i/o p46 p43 169 (3) i/o p47 p44 172 (3) i/o p48 p45 175 (3) i/o p49 p46 178 (3) i/o p50 p47 181 (3) i/o, sgck3 (1) , gck4 (2) p51 p48 184 (3) gnd p52 p49 - done p53 p50 - vcc p54 p51 - program p55 p52 - i/o (d7 (2) ) p56 p53 187 (3) i/o, pgck3 (1) , gck5 (2) p57 p54 190 (3) i/o (d6 (2) ) p58 p55 193 (3) i/o - p56 196 (3) i/o (d5 (2) ) p59 p57 199 (3) i/o p60 p58 202 (3) i/o - p59 205 (3) i/o - p60 208 (3) i/o (d4 (2) ) p61 p61 211 (3) i/o p62 p62 214 (3) vcc p63 p63 - gnd p64 p64 - i/o (d3 (2) ) p65 p65 217 (3) i/o p66 p66 220 (3) i/o - p67 223 (3) i/o (d2 (2) ) p67 p68 229 (3) i/o p68 p69 232 (3) i/o (d1 (2) ) p69 p70 235 (3) i/o p70 p71 238 (3) i/o (d0 (2) , din) p71 p72 241 (3) xcs05 and xcs05xl device pinouts xcs05/xl pad name pc84 vq100 bndry scan
spartan and spartan-xl families field programmable gate arrays 66 www.xilinx.com ds060 (v1.6) september 19, 2001 1-800-255-7778 product specification r i/o, sgck4 (1) , gck6 (2) (dout) p72 p73 244 (3) cclk p73 p74 - vcc p74 p75 - o, tdo p75 p76 0 gnd p76 p77 - i/o p77 p78 2 i/o, pgck4 (1) , gck7 (2) p78 p79 5 i/o (cs1 (2) )p79p808 i/o p80 p81 11 i/o p81 p82 14 i/o p82 p83 17 i/o - p84 20 i/o - p85 23 i/o p83 p86 26 i/o p84 p87 29 gnd p1 p88 - notes: 1. 5v spartan only 2. 3v spartan-xl only 3. the ? pwrdwn ? on the xcs05xl is not part of the boundary scan chain. for the xcs05xl, subtract 1 from all boundary scan numbers from gck3 on (127 and higher). xcs10 and xcs10xl device pinouts xcs10/xl pad name pc84 vq100 cs144 (2) tq144 bndry scan vcc p2 p89 d7 p128 - i/o p3 p90 a6 p129 44 i/o p4 p91 b6 p130 47 i/o - p92 c6 p131 50 i/o - p93 d6 p132 53 i/o p5 p94 a5 p133 56 i/o p6 p95 b5 p134 59 i/o - - c5 p135 62 i/o - - d5 p136 65 gnd - - a4 p137 - i/o p7 p96 b4 p138 68 i/o p8 p97 c4 p139 71 i/o - - a3 p140 74 i/o - - b3 p141 77 i/o p9 p98 c3 p142 80 i/o, sgck1 (1) gck8 (2) p10 p99 a2 p143 83 vcc p11 p100 b2 p144 - gnd p12 p1 a1 p1 - xcs05 and xcs05xl device pinouts xcs05/xl pad name pc84 vq100 bndry scan i/o, pgck1 (1) gck1 (2) p13 p2 b1 p2 86 i/o p14 p3 c2 p3 89 i/o - - c1 p4 92 i/o - - d4 p5 95 i/o, tdi p15 p4 d3 p6 98 i/o, tck p16 p5 d2 p7 101 gnd - - d1 p8 - i/o - - e4 p9 104 i/o - - e3 p10 107 i/o, tms p17 p6 e2 p11 110 i/o p18 p7 e1 p12 113 i/o - - f4 p13 116 i/o - p8 f3 p14 119 i/o p19 p9 f2 p15 122 i/o p20 p10 f1 p16 125 gnd p21 p11 g2 p17 - vcc p22 p12 g1 p18 - i/o p23 p13 g3 p19 128 i/o p24 p14 g4 p20 131 i/o - p15 h1 p21 134 i/o - - h2 p22 137 i/o p25 p16 h3 p23 140 i/o p26 p17 h4 p24 143 i/o - - j1 p25 146 i/o - - j2 p26 149 gnd - - j3 p27 - i/o p27 p18 j4 p28 152 i/o - p19 k1 p29 155 i/o - - k2 p30 158 i/o - - k3 p31 161 i/o p28 p20 l1 p32 164 i/o, sgck2 (1) gck2 (2) p29 p21 l2 p33 167 not connected (1) m1 (2) p30 p22 l3 p34 170 gnd p31 p23 m1 p35 - mode (1) , m0 (2) p32 p24 m2 p36 173 vcc p33 p25 n1 p37 - not connected (1) pwrdwn (2) p34 p26 n2 p38 174 (1) xcs10 and xcs10xl device pinouts xcs10/xl pad name pc84 vq100 cs144 (2) tq144 bndry scan
spartan and spartan-xl families field programmable gate arrays ds060 (v1.6) september 19, 2001 www.xilinx.com 67 product specification 1-800-255-7778 r i/o, pgck2 (1) gck3 (2) p35 p27 m3 p39 175 (3) i/o (hdc) p36 p28 n3 p40 178 (3) i/o - - k4 p41 181 (3) i/o - - l4 p42 184 (3) i/o - p29 m4 p43 187 (3) i/o (ldc ) p37 p30 n4 p44 190 (3) gnd - - k5 p45 - i/o - - l5 p46 193 (3) i/o - - m5 p47 196 (3) i/o p38 p31 n5 p48 199 (3) i/o p39 p32 k6 p49 202 (3) i/o - p33 l6 p50 205 (3) i/o - p34 m6 p51 208 (3) i/o p40 p35 n6 p52 211 (3) i/o (init ) p41 p36 m7 p53 214 (3) vcc p42 p37 n7 p54 - gnd p43 p38 l7 p55 - i/o p44 p39 k7 p56 217 (3) i/o p45 p40 n8 p57 220 (3) i/o - p41 m8 p58 223 (3) i/o - p42 l8 p59 226 (3) i/o p46 p43 k8 p60 229 (3) i/o p47 p44 n9 p61 232 (3) i/o - - m9 p62 235 (3) i/o - - l9 p63 238 (3) gnd - - k9 p64 - i/o p48 p45 n10 p65 241 (3) i/o p49 p46 m10 p66 244 (3) i/o - - l10 p67 247 (3) i/o - - n11 p68 250 (3) i/o p50 p47 m11 p69 253 (3) i/o, sgck3 (1) gck4 (2) p51 p48 l11 p70 256 (3) gnd p52 p49 n12 p71 - done p53 p50 m12 p72 - vcc p54 p51 n13 p73 - program p55 p52 m13 p74 - i/o (d7 (2) ) p56 p53 l12 p75 259 (3) i/o, pgck3 (1) gck5 (2) p57 p54 l13 p76 262 (3) i/o - - k10 p77 265 (3) i/o - - k11 p78 268 (3) i/o (d6 (2) ) p58 p55 k12 p79 271 (3) i/o - p56 k13 p80 274 (3) xcs10 and xcs10xl device pinouts xcs10/xl pad name pc84 vq100 cs144 (2) tq144 bndry scan gnd - - j10 p81 - i/o - - j11 p82 277 (3) i/o - - j12 p83 280 (3) i/o (d5 (2) ) p59 p57 j13 p84 283 (3) i/o p60 p58 h10 p85 286 (3) i/o - p59 h11 p86 289 (3) i/o - p60 h12 p87 292 (3) i/o (d4 (2) ) p61 p61 h13 p88 295 (3) i/o p62 p62 g12 p89 298 (3) vcc p63 p63 g13 p90 - gnd p64 p64 g11 p91 - i/o (d3 (2) ) p65 p65 g10 p92 301 (3) i/o p66 p66 f13 p93 304 (3) i/o - p67 f12 p94 307 (3) i/o - - f11 p95 310 (3) i/o (d2 (2) ) p67 p68 f10 p96 313 (3) i/o p68 p69 e13 p97 316 (3) i/o - - e12 p98 319 (3) i/o - - e11 p99 322 (3) gnd - - e10 p100 - i/o (d1 (2) ) p69 p70 d13 p101 325 (3) i/o p70 p71 d12 p102 328 (3) i/o - - d11 p103 331 (3) i/o - - c13 p104 334 (3) i/o (d0 (2) , din) p71 p72 c12 p105 337 (3) i/o, sgck4 (1) gck6 (2) (dout) p72 p73 c11 p106 340 (3) cclk p73 p74 b13 p107 - vcc p74 p75 b12 p108 - o, tdo p75 p76 a13 p109 0 gnd p76 p77 a12 p110 - i/o p77 p78 b11 p111 2 i/o, pgck4 (1) gck7 (2) p78 p79 a11 p112 5 i/o - - d10 p113 8 i/o - - c10 p114 11 i/o (cs1 (2) ) p79 p80 b10 p115 14 i/o p80 p81 a10 p116 17 gnd - - c9 p118 - i/o - - b9 p119 20 i/o - - a9 p120 23 i/o p81 p82 d8 p121 26 i/o p82 p83 c8 p122 29 i/o - p84 b8 p123 32 xcs10 and xcs10xl device pinouts xcs10/xl pad name pc84 vq100 cs144 (2) tq144 bndry scan
spartan and spartan-xl families field programmable gate arrays 68 www.xilinx.com ds060 (v1.6) september 19, 2001 1-800-255-7778 product specification r additional xcs10/xl package pins i/o - p85 a8 p124 35 i/o p83 p86 b7 p125 38 i/o p84 p87 a7 p126 41 gnd p1 p88 c7 p127 - notes: 1. 5v spartan only 2. 3v spartan-xl only 3. the ? pwrdwn ? on the xcs10xl is not part of the boundary scan chain. for the xcs10xl, subtract 1 from all boundary scan numbers from gck3 on (175 and higher). xcs10 and xcs10xl device pinouts xcs10/xl pad name pc84 vq100 cs144 (2) tq144 bndry scan tq144 not connected pins p117 - - - - - 5/5/97 cs144 not connected pins d9 - - - - - 4/28/99 xcs20 and xcs20xl device pinouts xcs20/xl pad name vq100 cs144 (2) tq144 pq208 bndry scan vcc p89 d7 p128 p183 - i/o p90 a6 p129 p184 62 i/o p91 b6 p130 p185 65 i/o p92 c6 p131 p186 68 i/o p93 d6 p132 p187 71 i/o - - - p188 74 i/o - - - p189 77 i/o p94 a5 p133 p190 80 i/o p95 b5 p134 p191 83 vcc (2) - - - p192 - i/o - c5 p135 p193 86 i/o - d5 p136 p194 89 gnd - a4 p137 p195 - i/o - - - p196 92 i/o - - - p197 95 i/o - - - p198 98 i/o - - - p199 101 i/o p96 b4 p138 p200 104 i/o p97 c4 p139 p201 107 i/o - a3 p140 p204 110 i/o - b3 p141 p205 113 i/o p98 c3 p142 p206 116 i/o, sgck1 (1) , gck8 (2) p99 a2 p143 p207 119 vcc p100 b2 p144 p208 - gnd p1 a1 p1 p1 - i/o, pgck1 (1) , gck1 (2) p2 b1 p2 p2 122 i/o p3 c2 p3 p3 125 i/o - c1 p4 p4 128 i/o - d4 p5 p5 131 i/o, tdi p4 d3 p6 p6 134 i/o, tck p5 d2 p7 p7 137 i/o - - - p8 140 i/o - - - p9 143 i/o - - - p10 146 i/o - - - p11 149 gnd - d1 p8 p13 - i/o - e4 p9 p14 152 i/o - e3 p10 p15 155 i/o, tms p6 e2 p11 p16 158 i/o p7 e1 p12 p17 161 vcc (2) -- -p18- i/o - - - p19 164 i/o - - - p20 167 i/o - f4 p13 p21 170 i/o p8 f3 p14 p22 173 i/o p9 f2 p15 p23 176 i/o p10 f1 p16 p24 179 gnd p11 g2 p17 p25 - vcc p12 g1 p18 p26 - i/o p13 g3 p19 p27 182 i/o p14 g4 p20 p28 185 i/o p15 h1 p21 p29 188 i/o - h2 p22 p30 191 xcs20 and xcs20xl device pinouts xcs20/xl pad name vq100 cs144 (2) tq144 pq208 bndry scan
spartan and spartan-xl families field programmable gate arrays ds060 (v1.6) september 19, 2001 www.xilinx.com 69 product specification 1-800-255-7778 r i/o - - - p31 194 i/o - - - p32 197 vcc (2) ---p33- i/o p16 h3 p23 p34 200 i/o p17 h4 p24 p35 203 i/o - j1 p25 p36 206 i/o - j2 p26 p37 209 gnd - j3 p27 p38 - i/o - - - p40 212 i/o - - - p41 215 i/o - - - p42 218 i/o - - - p43 221 i/o p18 j4 p28 p44 224 i/o p19 k1 p29 p45 227 i/o - k2 p30 p46 230 i/o - k3 p31 p47 233 i/o p20 l1 p32 p48 236 i/o, sgck2 (1) , gck2 (2) p21 l2 p33 p49 239 not connected (1) m1 (2) p22 l3 p34 p50 242 gnd p23 m1 p35 p51 - mode (1) , m0 (2) p24 m2 p36 p52 245 vcc p25 n1 p37 p53 - not connected (1) pwrdwn (2) p26 n2 p38 p54 246 (1) i/o, pgck2 (1) , gck3 (2) p27 m3 p39 p55 247 (3) i/o (hdc) p28 n3 p40 p56 250 (3) i/o - k4 p41 p57 253 (3) i/o - l4 p42 p58 256 (3) i/o p29 m4 p43 p59 259 (3) i/o (ldc ) p30 n4 p44 p60 262 (3) i/o - - - p61 265 (3) i/o - - - p62 268 (3) i/o - - - p63 271 (3) i/o - - - p64 274 (3) gnd - k5 p45 p66 - i/o - l5 p46 p67 277 (3) i/o - m5 p47 p68 280 (3) i/o p31 n5 p48 p69 283 (3) i/o p32 k6 p49 p70 286 (3) xcs20 and xcs20xl device pinouts xcs20/xl pad name vq100 cs144 (2) tq144 pq208 bndry scan vcc (2) -- -p71- i/o - - - p72 289 (3) i/o - - - p73 292 (3) i/o p33 l6 p50 p74 295 (3) i/o p34 m6 p51 p75 298 (3) i/o p35 n6 p52 p76 301 (3) i/o (init ) p36 m7 p53 p77 304 (3) vcc p37 n7 p54 p78 - gnd p38 l7 p55 p79 - i/o p39 k7 p56 p80 307 (3) i/o p40 n8 p57 p81 310 (3) i/o p41 m8 p58 p82 313 (3) i/o p42 l8 p59 p83 316 (3) i/o - - - p84 319 (3) i/o - - - p85 322 (3) vcc (2) -- -p86- i/o p43 k8 p60 p87 325 (3) i/o p44 n9 p61 p88 328 (3) i/o - m9 p62 p89 331 (3) i/o - l9 p63 p90 334 (3) gnd - k9 p64 p91 - i/o - - - p93 337 (3) i/o - - - p94 340 (3) i/o - - - p95 343 (3) i/o - - - p96 346 (3) i/o p45 n10 p65 p97 349 (3) i/o p46 m10 p66 p98 352 (3) i/o - l10 p67 p99 355 (3) i/o - n11 p68 p100 358 (3) i/o p47 m11 p69 p101 361 (3) i/o, sgck3 (1) , gck4 (2) p48 l11 p70 p102 364 (3) gnd p49 n12 p71 p103 - done p50 m12 p72 p104 - vcc p51 n13 p73 p105 - program p52 m13 p74 p106 - i/o (d7 (2) ) p53 l12 p75 p107 367 (3) i/o, pgck3 (1) , gck5 (2) p54 l13 p76 p108 370 (3) i/o - k10 p77 p109 373 (3) i/o - k11 p78 p110 376 (3) i/o (d6 (2) ) p55 k12 p79 p112 379 (3) i/o p56 k13 p80 p113 382 (3) i/o - - - p114 385 (3) xcs20 and xcs20xl device pinouts xcs20/xl pad name vq100 cs144 (2) tq144 pq208 bndry scan
spartan and spartan-xl families field programmable gate arrays 70 www.xilinx.com ds060 (v1.6) september 19, 2001 1-800-255-7778 product specification r additional xcs20/xl package pins i/o - - - p115 388 (3) i/o - - - p116 391 (3) i/o - - - p117 394 (3) gnd - j10 p81 p118 - i/o - j11 p82 p119 397 (3) i/o - j12 p83 p120 400 (3) vcc (2) - - - p121 - i/o (d5 (2) ) p57 j13 p84 p122 403 (3) i/o p58 h10 p85 p123 406 (3) i/o - - - p124 409 (3) i/o - - - p125 412 (3) i/o p59 h11 p86 p126 415 (3) i/o p60 h12 p87 p127 418 (3) i/o (d4 (2) ) p61 h13 p88 p128 421 (3) i/o p62 g12 p89 p129 424 (3) vcc p63 g13 p90 p130 - gnd p64 g11 p91 p131 - i/o (d3 (2) ) p65 g10 p92 p132 427 (3) i/o p66 f13 p93 p133 430 (3) i/o p67 f12 p94 p134 433 (3) i/o - f11 p95 p135 436 (3) i/o - - - p136 439 (3) i/o - - - p137 442 (3) i/o (d2 (2) ) p68 f10 p96 p138 445 (3) i/o p69 e13 p97 p139 448 (3) vcc (2) - - - p140 - i/o - e12 p98 p141 451 (3) i/o - e11 p99 p142 454 (3) gnd - e10 p100 p143 - i/o - - - p145 457 (3) i/o - - - p146 460 (3) i/o - - - p147 463 (3) i/o - - - p148 466 (3) i/o (d1 (2) ) p70 d13 p101 p149 469 (3) i/o p71 d12 p102 p150 472 (3) i/o - d11 p103 p151 475 (3) i/o - c13 p104 p152 478 (3) i/o (d0 (2) , din) p72 c12 p105 p153 481 (3) i/o, sgck4 (1) , gck6 (2) (dout) p73 c11 p106 p154 484 (3) cclk p74 b13 p107 p155 - xcs20 and xcs20xl device pinouts xcs20/xl pad name vq100 cs144 (2) tq144 pq208 bndry scan vcc p75 b12 p108 p156 - o, tdo p76 a13 p109 p157 0 gnd p77 a12 p110 p158 - i/o p78 b11 p111 p159 2 i/o, pgck4 (1) , gck7 (2) p79 a11 p112 p160 5 i/o - d10 p113 p161 8 i/o - c10 p114 p162 11 i/o (cs1 (2) ) p80 b10 p115 p163 14 i/o p81 a10 p116 p164 17 i/o - d9 p117 p166 20 i/o - - - p167 23 i/o - - - p168 26 i/o - - - p169 29 gnd - c9 p118 p170 - i/o - b9 p119 p171 32 i/o - a9 p120 p172 35 vcc (2) - - - p173 - i/o p82 d8 p121 p174 38 i/o p83 c8 p122 p175 41 i/o - - - p176 44 i/o - - - p177 47 i/o p84 b8 p123 p178 50 i/o p85 a8 p124 p179 53 i/o p86 b7 p125 p180 56 i/o p87 a7 p126 p181 59 gnd p88 c7 p127 p182 - 2/8/00 pq208 not connected pins p12 p18 (1) p33 (1) p39 p65 p71 (1) p86 (1) p92 p111 p121 (1) p140 (1) p144 p165 p173 (1) p192 (1) p202 p203 - 9/16/98 notes: 1. 5v spartan only 2. 3v spartan-xl only 3. the ? pwrdwn ? on the xcs20xl is not part of the boundary scan chain. for the xcs20xl, subtract 1 from all boundary scan numbers from gck3 on (247 and higher). xcs20 and xcs20xl device pinouts xcs20/xl pad name vq100 cs144 (2) tq144 pq208 bndry scan
spartan and spartan-xl families field programmable gate arrays ds060 (v1.6) september 19, 2001 www.xilinx.com 71 product specification 1-800-255-7778 r xcs30 and xcs30xl device pinouts xcs30/xl pad name vq100 tq144 pq208 pq240 bg256 cs280 (2) bndry scan vcc p89 p128 p183 p212 vcc (4) vcc (4) - i/o p90 p129 p184 p213 c10 d10 74 i/o p91 p130 p185 p214 d10 e10 77 i/o p92 p131 p186 p215 a9 a9 80 i/o p93 p132 p187 p216 b9 b9 83 i/o - - p188 p217 c9 c9 86 i/o - - p189 p218 d9 d9 89 i/o p94 p133 p190 p220 a8 a8 92 i/o p95 p134 p191 p221 b8 b8 95 vcc - - p192 p222 vcc (4) vcc (4) - i/o - - - p223 a6 b7 98 i/o - - - p224 c7 c7 101 i/o - p135 p193 p225 b6 d7 104 i/o - p136 p194 p226 a5 a6 107 gnd - p137 p195 p227 gnd (4) gnd (4) - i/o - - p196 p228 c6 b6 110 i/o - - p197 p229 b5 c6 113 i/o - - p198 p230 a4 d6 116 i/o - - p199 p231 c5 e6 119 i/o p96 p138 p200 p232 b4 a5 122 i/o p97 p139 p201 p233 a3 c5 125 i/o - - p202 p234 d5 b4 128 i/o - - p203 p235 c4 c4 131 i/o - p140 p204 p236 b3 a3 134 i/o - p141 p205 p237 b2 a2 137 i/o p98 p142 p206 p238 a2 b3 140 i/o, sgck1 (1) , gck8 (2) p99 p143 p207 p239 c3 b2 143 vcc p100 p144 p208 p240 vcc (4) vcc (4) - gnd p1p1p1p1gnd (4) gnd (4) - i/o, pgck1 (1) , gck1 (2) p2 p2 p2 p2 b1 c3 146 i/o p3p3p3p3c2 c2 149 i/o - p4 p4 p4 d2 b1 152 i/o - p5 p5 p5 d3 c1 155 i/o, tdi p4p6p6p6e4 d4 158 i/o, tck p5p7p7p7c1 d3 161 i/o - - p8 p8 d1 e2 164 i/o - - p9 p9 e3 e4 167 i/o - - p10 p10 e2 e1 170 i/o - - p11 p11 e1 f5 173 i/o - - p12 p12 f3 f3 176 i/o ---p13f2f2179 gnd - p8 p13 p14 gnd (4) gnd (4) - i/o - p9 p14 p15 g3 f4 182 i/o - p10 p15 p16 g2 f1 185
spartan and spartan-xl families field programmable gate arrays 72 www.xilinx.com ds060 (v1.6) september 19, 2001 1-800-255-7778 product specification r i/o, tms p6 p11 p16 p17 g1 g3 188 i/o p7 p12 p17 p18 h3 g2 191 vcc - - p18 p19 vcc (4) vcc (4) - i/o ---p20h2g4194 i/o ---p21h1h1197 i/o - - p19 p23 j2 h4 200 i/o - - p20 p24 j1 j1 203 i/o - p13 p21 p25 k2 j2 206 i/o p8 p14 p22 p26 k3 j3 209 i/o p9 p15 p23 p27 k1 j4 212 i/o p10 p16 p24 p28 l1 k1 215 gnd p11 p17 p25 p29 gnd (4) gnd (4) - vcc p12 p18 p26 p30 vcc (4) vcc (4) - i/o p13 p19 p27 p31 l2 k3 218 i/o p14 p20 p28 p32 l3 k4 221 i/o p15 p21 p29 p33 l4 k5 224 i/o - p22 p30 p34 m1 l1 227 i/o --p31p35m2l2230 i/o --p32p36m3l3233 i/o ---p38n1m2236 i/o ---p39n2m3239 vcc - - p33 p40 vcc (4) vcc (4) - i/o p16 p23 p34 p41 p1 n1 242 i/o p17 p24 p35 p42 p2 n2 245 i/o - p25 p36 p43 r1 n3 248 i/o - p26 p37 p44 p3 n4 251 gnd - p27 p38 p45 gnd (4) gnd (4) - i/o ---p46t1p1254 i/o - - p39 p47 r3 p2 257 i/o - - p40 p48 t2 p3 260 i/o - - p41 p49 u1 p4 263 i/o - - p42 p50 t3 p5 266 i/o - - p43 p51 u2 r1 269 i/o p18 p28 p44 p52 v1 t1 272 i/o p19 p29 p45 p53 t4 t2 275 i/o - p30 p46 p54 u3 t3 278 i/o - p31 p47 p55 v2 u1 281 i/o p20 p32 p48 p56 w1 v1 284 i/o, sgck2 (1) , gck2 (2) p21 p33 p49 p57 v3 u2 287 not connected (1) , m1 (2) p22 p34 p50 p58 w2 v2 290 gnd p23 p35 p51 p59 gnd (4) gnd (4) - mode (1) , m0 (2) p24 p36 p52 p60 y1 w1 293 vcc p25 p37 p53 p61 vcc (4) vcc (4) - not connected (1) , pwrdwn (2) p26 p38 p54 p62 w3 v3 294 (1) xcs30 and xcs30xl device pinouts (continued) xcs30/xl pad name vq100 tq144 pq208 pq240 bg256 cs280 (2) bndry scan
spartan and spartan-xl families field programmable gate arrays ds060 (v1.6) september 19, 2001 www.xilinx.com 73 product specification 1-800-255-7778 r i/o, pgck2 (1) , gck3 (2) p27 p39 p55 p63 y2 w2 295 (3) i/o (hdc) p28 p40 p56 p64 w4 w3 298 (3) i/o - p41 p57 p65 v4 t4 301 (3) i/o - p42 p58 p66 u5 u4 304 (3) i/o p29 p43 p59 p67 y3 v4 307 (3) i/o (ldc ) p30 p44 p60 p68 y4 w4 310 (3) i/o - - p61 p69 v5 t5 313 (3) i/o - - p62 p70 w5 w5 316 (3) i/o - - p63 p71 y5 r6 319 (3) i/o - - p64 p72 v6 u6 322 (3) i/o - - p65 p73 w6 v6 325 (3) i/o - - - p74 y6 t6 328 (3) gnd - p45 p66 p75 gnd (4) gnd (4) - i/o - p46 p67 p76 w7 w6 331 (3) i/o - p47 p68 p77 y7 u7 334 (3) i/o p31 p48 p69 p78 v8 v7 337 (3) i/o p32 p49 p70 p79 w8 w7 340 (3) vcc - - p71 p80 vcc (4) vcc (4) - i/o - - p72 p81 y8 w8 343 (3) i/o - - p73 p82 u9 u8 346 (3) i/o - - - p84 y9 w9 349 (3) i/o - - - p85 w10 v9 352 (3) i/o p33 p50 p74 p86 v10 u9 355 (3) i/o p34 p51 p75 p87 y10 t9 358 (3) i/o p35 p52 p76 p88 y11 w10 361 (3) i/o (init ) p36 p53 p77 p89 w11 v10 364 (3) vcc p37 p54 p78 p90 vcc (4) vcc (4) - gnd p38 p55 p79 p91 gnd (4) gnd (4) - i/o p39 p56 p80 p92 v11 t10 367 (3) i/o p40 p57 p81 p93 u11 r10 370 (3) i/o p41 p58 p82 p94 y12 w11 373 (3) i/o p42 p59 p83 p95 w12 v11 376 (3) i/o - - p84 p96 v12 u11 379 (3) i/o - - p85 p97 u12 t11 382 (3) i/o - - - p99 v13 u12 385 (3) i/o - - - p100 y14 t12 388 (3) vcc - - p86 p101 vcc (4) vcc (4) - i/o p43 p60 p87 p102 y15 v13 391 (3) i/o p44 p61 p88 p103 v14 u13 394 (3) i/o - p62 p89 p104 w15 t13 397 (3) i/o - p63 p90 p105 y16 w14 400 (3) gnd - p64 p91 p106 gnd (4) gnd (4) - i/o - - - p107 v15 v14 403 (3) i/o - - p92 p108 w16 u14 406 (3) i/o - - p93 p109 y17 t14 409 (3) xcs30 and xcs30xl device pinouts (continued) xcs30/xl pad name vq100 tq144 pq208 pq240 bg256 cs280 (2) bndry scan
spartan and spartan-xl families field programmable gate arrays 74 www.xilinx.com ds060 (v1.6) september 19, 2001 1-800-255-7778 product specification r i/o - - p94 p110 v16 r14 412 (3) i/o - - p95 p111 w17 w15 415 (3) i/o - - p96 p112 y18 u15 418 (3) i/o p45 p65 p97 p113 u16 v16 421 (3) i/o p46 p66 p98 p114 v17 u16 424 (3) i/o - p67 p99 p115 w18 w17 427 (3) i/o - p68 p100 p116 y19 w18 430 (3) i/o p47 p69 p101 p117 v18 v17 433 (3) i/o, sgck3 (1) , gck4 (2) p48 p70 p102 p118 w19 v18 436 (3) gnd p49 p71 p103 p119 gnd (4) gnd (4) - done p50 p72 p104 p120 y20 w19 - vcc p51 p73 p105 p121 vcc (4) vcc (4) - program p52 p74 p106 p122 v19 u18 - i/o (d7 (2) ) p53 p75 p107 p123 u19 v19 439 (3) i/o, pgck3 (1) , gck5 (2) p54 p76 p108 p124 u18 u19 442 (3) i/o - p77 p109 p125 t17 t16 445 (3) i/o - p78 p110 p126 v20 t17 448 (3) i/o - - - p127 u20 t18 451 (3) i/o - - p111 p128 t18 t19 454 (3) i/o (d6 (2) ) p55 p79 p112 p129 t19 r16 457 (3) i/o p56 p80 p113 p130 t20 r19 460 (3) i/o - - p114 p131 r18 p15 463 (3) i/o - - p115 p132 r19 p17 466 (3) i/o - - p116 p133 r20 p18 469 (3) i/o - - p117 p134 p18 p16 472 (3) gnd - p81 p118 p135 gnd (4) gnd (4) - i/o - - - p136 p20 p19 475 (3) i/o - - - p137 n18 n17 478 (3) i/o - p82 p119 p138 n19 n18 481 (3) i/o - p83 p120 p139 n20 n19 484 (3) vcc - - p121 p140 vcc (4) vcc (4) - i/o (d5 (2) ) p57 p84 p122 p141 m17 m19 487 (3) i/o p58 p85 p123 p142 m18 m17 490 (3) i/o - - p124 p144 m20 l19 493 (3) i/o - - p125 p145 l19 l18 496 (3) i/o p59 p86 p126 p146 l18 l17 499 (3) i/o p60 p87 p127 p147 l20 l16 502 (3) i/o (d4 (2) ) p61 p88 p128 p148 k20 k19 505 (3) i/o p62 p89 p129 p149 k19 k18 508 (3) vcc p63 p90 p130 p150 vcc (4) vcc (4) - gnd p64 p91 p131 p151 gnd (4) gnd (4) - i/o (d3 (2) ) p65 p92 p132 p152 k18 k16 511 (3) i/o p66 p93 p133 p153 k17 k15 514 (3) i/o p67 p94 p134 p154 j20 j19 517 (3) i/o - p95 p135 p155 j19 j18 520 (3) xcs30 and xcs30xl device pinouts (continued) xcs30/xl pad name vq100 tq144 pq208 pq240 bg256 cs280 (2) bndry scan
spartan and spartan-xl families field programmable gate arrays ds060 (v1.6) september 19, 2001 www.xilinx.com 75 product specification 1-800-255-7778 r i/o - - p136 p156 j18 j17 523 (3) i/o - - p137 p157 j17 j16 526 (3) i/o (d2 (2) ) p68 p96 p138 p159 h19 h17 529 (3) i/o p69 p97 p139 p160 h18 h16 532 (3) vcc - - p140 p161 vcc (4) vcc (4) - i/o - p98 p141 p162 g19 g18 535 (3) i/o - p99 p142 p163 f20 g17 538 (3) i/o - - - p164 g18 g16 541 (3) i/o - - - p165 f19 f19 544 (3) gnd - p100 p143 p166 gnd (4) gnd (4) - i/o - - - p167 f18 f18 547 (3) i/o - - p144 p168 e19 f17 550 (3) i/o - - p145 p169 d20 f16 553 (3) i/o - - p146 p170 e18 f15 556 (3) i/o - - p147 p171 d19 e19 559 (3) i/o - - p148 p172 c20 e17 562 (3) i/o (d1 (2) ) p70 p101 p149 p173 e17 e16 565 (3) i/o p71 p102 p150 p174 d18 d19 568 (3) i/o - p103 p151 p175 c19 c19 571 (3) i/o - p104 p152 p176 b20 b19 574 (3) i/o (d0 (2) , din) p72 p105 p153 p177 c18 c18 577 (3) i/o, sgck4 (1) , gck6 (2) (dout) p73 p106 p154 p178 b19 b18 580 (3) cclk p74 p107 p155 p179 a20 a19 - vcc p75 p108 p156 p180 vcc (4) vcc (4) - o, tdo p76 p109 p157 p181 a19 b17 0 gnd p77 p110 p158 p182 gnd (4) gnd (4) - i/o p78 p111 p159 p183 b18 a18 2 i/o, pgck4 (1) , gck7 (2) p79 p112 p160 p184 b17 a17 5 i/o - p113 p161 p185 c17 d16 8 i/o - p114 p162 p186 d16 c16 11 i/o (cs1) (2) p80 p115 p163 p187 a18 b16 14 i/o p81 p116 p164 p188 a17 a16 17 i/o - - p165 p189 c16 d15 20 i/o - - - p190 b16 a15 23 i/o - p117 p166 p191 a16 e14 26 i/o - - p167 p192 c15 c14 29 i/o - - p168 p193 b15 b14 32 i/o - - p169 p194 a15 d14 35 gnd - p118 p170 p196 gnd (4) gnd (4) - i/o - p119 p171 p197 b14 a14 38 i/o - p120 p172 p198 a14 c13 41 i/o - - - p199 c13 b13 44 i/o - - - p200 b13 a13 47 vcc - - p173 p201 vcc (4) vcc (4) - i/o p82 p121 p174 p202 c12 b12 50 xcs30 and xcs30xl device pinouts (continued) xcs30/xl pad name vq100 tq144 pq208 pq240 bg256 cs280 (2) bndry scan
spartan and spartan-xl families field programmable gate arrays 76 www.xilinx.com ds060 (v1.6) september 19, 2001 1-800-255-7778 product specification r additional xcs30/xl package pins i/o p83 p122 p175 p203 b12 d12 53 i/o - - p176 p205 a12 a11 56 i/o - - p177 p206 b11 b11 59 i/o p84 p123 p178 p207 c11 c11 62 i/o p85 p124 p179 p208 a11 d11 65 i/o p86 p125 p180 p209 a10 a10 68 i/o p87 p126 p181 p210 b10 b10 71 gnd p88 p127 p182 p211 gnd (4) gnd (4) - 2/8/00 notes: 1. 5v spartan only 2. 3v spartan-xl only 3. the ? pwrdwn ? on the xcs30xl is not part of the boundary scan chain. for the xcs30xl, subtract 1 from all boundary scan numbers from gck3 on (295 and higher). 4. pads labeled gnd (4) or v cc (4) are internally bonded to ground or v cc planes within the package. xcs30 and xcs30xl device pinouts (continued) xcs30/xl pad name vq100 tq144 pq208 pq240 bg256 cs280 (2) bndry scan pq240 gnd pins p22 p37 p83 p98 p143 p158 p204 p219 - - - - not connected pins p195----- 2/12/98 bg256 vcc pins c14 d6 d7 d11 d14 d15 e20 f1 f4 f17 g4 g17 k4 l17 p4 p17 p19 r2 r4 r17 u6 u7 u10 u14 u15 v7 w20 - - - gnd pins a1 b7 d4 d8 d13 d17 g20 h4 h17 n3 n4 n17 u4 u8 u13 u17 w14 - not connected pins a7 a13 c8 d12 h20 j3 j4 m4 m19 v9 w9 w13 y13----- 6/4/97 cs280 vcc pins a1 a7 b5 b15 c10 c17 d13 e3 e18 g1 g19 k2 k17 m4 n16 r3 r18 t7 u3 u10 u17 v5 v15 w13 gnd pins e5 e7 e8 e9 e11 e12 e13 g5 g15 h5 h15 j5 j15 l5 l15 m5 m15 n5 n15 r7 r8 r9 r11 r12 r13----- not connected pins a4a12c8c12c15d1 d2 d5 d8 d17 d18 e15 h2 h3 h18 h19 l4 m1 m16 m18 r2 r4 r5 r15 r17 t8 t15 u5 v8 v12 w12w16---- 5/19/99
spartan and spartan-xl families field programmable gate arrays ds060 (v1.6) september 19, 2001 www.xilinx.com 77 product specification 1-800-255-7778 r xcs40 and xcs40xl device pinouts xcs40/xl pad name pq208 pq240 bg256 cs280 (2) bndry scan vcc p183 p212 vcc (4) vcc (4) - i/o p184 p213 c10 d10 86 i/o p185 p214 d10 e10 89 i/o p186 p215 a9 a9 92 i/o p187 p216 b9 b9 95 i/o p188 p217 c9 c9 98 i/o p189 p218 d9 d9 101 i/o p190 p220 a8 a8 104 i/o p191 p221 b8 b8 107 i/o - - c8 c8 110 i/o - - a7 d8 113 vcc p192 p222 vcc (4) vcc (4) - i/o - p223 a6 b7 116 i/o - p224 c7 c7 119 i/o p193 p225 b6 d7 122 i/o p194 p226 a5 a6 125 gnd p195 p227 gnd (4) gnd (4) - i/o p196 p228 c6 b6 128 i/o p197 p229 b5 c6 131 i/o p198 p230 a4 d6 134 i/o p199 p231 c5 e6 137 i/o p200 p232 b4 a5 140 i/o p201 p233 a3 c5 143 i/o - - - d5 146 i/o - - - a4 149 i/o p202 p234 d5 b4 152 i/o p203 p235 c4 c4 155 i/o p204 p236 b3 a3 158 i/o p205 p237 b2 a2 161 i/o p206 p238 a2 b3 164 i/o, sgck1 (1) , gck8 (2) p207 p239 c3 b2 167 vcc p208 p240 vcc (4) vcc (4) - gnd p1 p1 gnd (4) gnd (4) - i/o, pgck1 (1) , gck1 (2) p2 p2 b1 c3 170 i/o p3 p3 c2 c2 173 i/o p4 p4 d2 b1 176 i/o p5 p5 d3 c1 179 i/o, tdi p6 p6 e4 d4 182 i/o, tck p7 p7 c1 d3 185 i/o - - - d2 188 i/o - - - d1 191 i/o p8 p8 d1 e2 194 i/o p9 p9 e3 e4 197 i/o p10 p10 e2 e1 200 i/o p11 p11 e1 f5 203 i/o p12 p12 f3 f3 206 i/o - p13 f2 f2 209 gnd p13 p14 gnd (4) gnd (4) - i/o p14 p15 g3 f4 212 i/o p15 p16 g2 f1 215 i/o, tms p16 p17 g1 g3 218 i/o p17 p18 h3 g2 221 vcc p18 p19 vcc (4) vcc (4) - i/o - p20 h2 g4 224 i/o - p21 h1 h1 227 i/o - - j4 h3 230 i/o - - j3 h2 233 i/o p19 p23 j2 h4 236 i/o p20 p24 j1 j1 239 i/o p21 p25 k2 j2 242 i/o p22 p26 k3 j3 245 i/o p23 p27 k1 j4 248 i/o p24 p28 l1 k1 251 gnd p25 p29 gnd (4) gnd (4) - vcc p26 p30 vcc (4) vcc (4) - i/o p27 p31 l2 k3 254 i/o p28 p32 l3 k4 257 i/o p29 p33 l4 k5 260 i/o p30 p34 m1 l1 263 i/o p31 p35 m2 l2 266 i/o p32 p36 m3 l3 269 i/o - - m4 l4 272 i/o ---m1275 i/o - p38 n1 m2 278 i/o - p39 n2 m3 281 vcc p33 p40 vcc (4) vcc (4) - i/o p34 p41 p1 n1 284 i/o p35 p42 p2 n2 287 i/o p36 p43 r1 n3 290 i/o p37 p44 p3 n4 293 gnd p38 p45 gnd (4) gnd (4) - i/o - p46 t1 p1 296 i/o p39 p47 r3 p2 299 i/o p40 p48 t2 p3 302 i/o p41 p49 u1 p4 305 i/o p42 p50 t3 p5 308 i/o p43 p51 u2 r1 311 xcs40 and xcs40xl device pinouts xcs40/xl pad name pq208 pq240 bg256 cs280 (2) bndry scan
spartan and spartan-xl families field programmable gate arrays 78 www.xilinx.com ds060 (v1.6) september 19, 2001 1-800-255-7778 product specification r i/o - - - r2 314 i/o - - - r4 317 i/o p44 p52 v1 t1 320 i/o p45 p53 t4 t2 323 i/o p46 p54 u3 t3 326 i/o p47 p55 v2 u1 329 i/o p48 p56 w1 v1 332 i/o, sgck2 (1) , gck2 (2) p49 p57 v3 u2 335 not connected (1) m1 (2) p50 p58 w2 v2 338 gnd p51 p59 gnd (4) gnd (4) - mode (1) , m0 (2) p52 p60 y1 w1 341 vcc p53 p61 vcc (4) vcc (4) - not connected (1) pwrdwn (2) p54 p62 w3 v3 342 (1) i/o, pgck2 (1) , gck3 (2) p55 p63 y2 w2 343 (3) i/o (hdc) p56 p64 w4 w3 346 (3) i/o p57 p65 v4 t4 349 (3) i/o p58 p66 u5 u4 352 (3) i/o p59 p67 y3 v4 355 (3) i/o (ldc )p60p68y4w4358 (3) i/o - - - r5 361 (3) i/o - - - u5 364 (3) i/o p61 p69 v5 t5 367 (3) i/o p62 p70 w5 w5 370 (3) i/o p63 p71 y5 r6 373 (3) i/o p64 p72 v6 u6 376 (3) i/o p65 p73 w6 v6 379 (3) i/o - p74 y6 t6 382 (3) gnd p66 p75 gnd (4) gnd (4) - i/o p67 p76 w7 w6 385 (3) i/o p68 p77 y7 u7 388 (3) i/o p69 p78 v8 v7 391 (3) i/o p70 p79 w8 w7 394 (3) vcc p71 p80 vcc (4) vcc (4) - i/o p72 p81 y8 w8 397 (3) i/o p73 p82 u9 u8 400 (3) i/o - - v9 v8 403 (3) i/o - - w9 t8 406 (3) i/o - p84 y9 w9 409 (3) xcs40 and xcs40xl device pinouts xcs40/xl pad name pq208 pq240 bg256 cs280 (2) bndry scan i/o - p85 w10 v9 412 (3) i/o p74 p86 v10 u9 415 (3) i/o p75 p87 y10 t9 418 (3) i/o p76 p88 y11 w10 421 (3) i/o (init ) p77 p89 w11 v10 424 (3) vcc p78 p90 vcc (4) vcc (4) vcc (4) gnd p79 p91 gnd (4) gnd (4) - i/o p80 p92 v11 t10 427 (3) i/o p81 p93 u11 r10 430 (3) i/o p82 p94 y12 w11 433 (3) i/o p83 p95 w12 v11 436 (3) i/o p84 p96 v12 u11 439 (3) i/o p85 p97 u12 t11 442 (3) i/o - - y13 w12 445 (3) i/o - - w13 v12 448 (3) i/o - p99 v13 u12 451 (3) i/o - p100 y14 t12 454 (3) vcc p86 p101 vcc (4) vcc (4) - i/o p87 p102 y15 v13 457 (3) i/o p88 p103 v14 u13 460 (3) i/o p89 p104 w15 t13 463 (3) i/o p90 p105 y16 w14 466 (3) gnd p91 p106 gnd (4) gnd (4) - i/o - p107 v15 v14 469 (3) i/o p92 p108 w16 u14 472 (3) i/o p93 p109 y17 t14 475 (3) i/o p94 p110 v16 r14 478 (3) i/o p95 p111 w17 w15 481 (3) i/o p96 p112 y18 u15 484 (3) i/o - - - t15 487 (3) i/o - - - w16 490 (3) i/o p97 p113 u16 v16 493 (3) i/o p98 p114 v17 u16 496 (3) i/o p99 p115 w18 w17 499 (3) i/o p100 p116 y19 w18 502 (3) i/o p101 p117 v18 v17 505 (3) i/o, sgck3 (1) , gck4 (2) p102 p118 w19 v18 508 (3) gnd p103 p119 gnd (4) gnd (4) - done p104 p120 y20 w19 - vcc p105 p121 vcc (4) vcc (4) - program p106 p122 v19 u18 - i/o (d7 (2) ) p107 p123 u19 v19 511 (3) xcs40 and xcs40xl device pinouts xcs40/xl pad name pq208 pq240 bg256 cs280 (2) bndry scan
spartan and spartan-xl families field programmable gate arrays ds060 (v1.6) september 19, 2001 www.xilinx.com 79 product specification 1-800-255-7778 r i/o, pgck3 (1) , gck5 (2) p108 p124 u18 u19 514 (3) i/o p109 p125 t17 t16 517 (3) i/o p110 p126 v20 t17 520 (3) i/o - p127 u20 t18 523 (3) i/o p111 p128 t18 t19 526 (3) i/o - - - r15 529 (3) i/o - - - r17 523 (3) i/o (d6 (2) ) p112 p129 t19 r16 535 (3) i/o p113 p130 t20 r19 538 (3) i/o p114 p131 r18 p15 541 (3) i/o p115 p132 r19 p17 544 (3) i/o p116 p133 r20 p18 547 (3) i/o p117 p134 p18 p16 550 (3) gnd p118 p135 gnd (4) gnd (4) - i/o - p136 p20 p19 553 (3) i/o - p137 n18 n17 556 (3) i/o p119 p138 n19 n18 559 (3) i/o p120 p139 n20 n19 562 (3) vcc p121 p140 vcc (4) vcc (4) - i/o (d5 (2) ) p122 p141 m17 m19 565 (3) i/o p123 p142 m18 m17 568 (3) i/o - - - m18 571 (3) i/o - - m19 m16 574 (3) i/o p124 p144 m20 l19 577 (3) i/o p125 p145 l19 l18 580 (3) i/o p126 p146 l18 l17 583 (3) i/o p127 p147 l20 l16 586 (3) i/o (d4 (2) ) p128 p148 k20 k19 589 (3) i/o p129 p149 k19 k18 592 (3) vcc p130 p150 vcc (4) vcc (4) - gnd p131 p151 gnd (4) gnd (4) - i/o (d3 (2) ) p132 p152 k18 k16 595 (3) i/o p133 p153 k17 k15 598 (3) i/o p134 p154 j20 j19 601 (3) i/o p135 p155 j19 j18 604 (3) i/o p136 p156 j18 j17 607 (3) i/o p137 p157 j17 j16 610 (3) i/o - - h20 h19 613 (3) i/o - - - h18 616 (3) i/o (d2 (2) ) p138 p159 h19 h17 619 (3) i/o p139 p160 h18 h16 622 (3) vcc p140 p161 vcc (4) vcc (4) - i/o p141 p162 g19 g18 625 (3) i/o p142 p163 f20 g17 628 (3) xcs40 and xcs40xl device pinouts xcs40/xl pad name pq208 pq240 bg256 cs280 (2) bndry scan i/o - p164 g18 g16 631 (3) i/o - p165 f19 f19 634 (3) gnd p143 p166 gnd (4) gnd (4) - i/o - p167 f18 f18 637 (3) i/o p144 p168 e19 f17 640 (3) i/o p145 p169 d20 f16 643 (3) i/o p146 p170 e18 f15 646 (3) i/o p147 p171 d19 e19 649 (3) i/o p148 p172 c20 e17 652 (3) i/o (d1 (2) ) p149 p173 e17 e16 655 (3) i/o p150 p174 d18 d19 658 (3) i/o - - - d18 661 (3) i/o - - - d17 664 (3) i/o p151 p175 c19 c19 667 (3) i/o p152 p176 b20 b19 670 (3) i/o (d0 (2) , din) p153 p177 c18 c18 673 (3) i/o, sgck4 (1) , gck6 (2) (dout) p154 p178 b19 b18 676 (3) cclk p155 p179 a20 a19 - vcc p156 p180 vcc (4) vcc (4) - o, tdo p157 p181 a19 b17 0 gnd p158 p182 gnd (4) gnd (4) - i/o p159 p183 b18 a18 2 i/o, pgck4 (1) , gck7 (2) p160 p184 b17 a17 5 i/o p161 p185 c17 d16 8 i/o p162 p186 d16 c16 11 i/o (cs1 (2) ) p163 p187 a18 b16 14 i/o p164 p188 a17 a16 17 i/o ---e1520 i/o ---c1523 i/o p165 p189 c16 d15 26 i/o - p190 b16 a15 29 i/o p166 p191 a16 e14 32 i/o p167 p192 c15 c14 35 i/o p168 p193 b15 b14 38 i/o p169 p194 a15 d14 41 gnd p170 p196 gnd (4) gnd (4) - i/o p171 p197 b14 a14 44 i/o p172 p198 a14 c13 47 i/o - p199 c13 b13 50 i/o - p200 b13 a13 53 vcc p173 p201 vcc (4) vcc (4) - xcs40 and xcs40xl device pinouts xcs40/xl pad name pq208 pq240 bg256 cs280 (2) bndry scan
spartan and spartan-xl families field programmable gate arrays 80 www.xilinx.com ds060 (v1.6) september 19, 2001 1-800-255-7778 product specification r additional xcs40/xl package pins i/o - - a13 a12 56 i/o - - d12 c12 59 i/o p174 p202 c12 b12 62 i/o p175 p203 b12 d12 65 i/o p176 p205 a12 a11 68 i/o p177 p206 b11 b11 71 i/o p178 p207 c11 c11 74 i/o p179 p208 a11 d11 77 i/o p180 p209 a10 a10 80 i/o p181 p210 b10 b10 83 gnd p182 p211 gnd (4) gnd (4) - 2/8/00 notes: 1. 5v spartan only 2. 3v spartan-xl only 3. the ? pwrdwn ? on the xcs40xl is not part of the boundary scan chain. for the xcs40xl, subtract 1 from all boundary scan numbers from gck3 on (343 and higher). 4. pads labeled gnd (4) or v cc (4) are internally bonded to ground or v cc planes within the package. xcs40 and xcs40xl device pinouts xcs40/xl pad name pq208 pq240 bg256 cs280 (2) bndry scan pq240 gnd pins p22 p37 p83 p98 p143 p158 p204p219---- not connected pins p195----- 2/12/98 bg256 vcc pins c14 d6 d7 d11 d14 d15 e20 f1 f4 f17 g4 g17 k4 l17 p4 p17 p19 r2 r4 r17 u6 u7 u10 u14 u15 v7 w20 - - - gnd pins a1 b7 d4 d8 d13 d17 g20 h4 h17 n3 n4 n17 u4 u8 u13 u17 w14 - 6/17/97 cs280 vcc pins a1 a7 b5 b15 c10 c17 d13 e3 e18 g1 g19 k2 k17 m4 n16 r3 r18 t7 u3 u10 u17 v5 v15 w13 gnd pins e5 e7 e8 e9 e11 e12 e13 g5 g15 h5 h15 j5 j15l5l15m5m15n5 n15r7r8r9r11r12 r13----- 5/19/99
spartan and spartan-xl families field programmable gate arrays ds060 (v1.6) september 19, 2001 www.xilinx.com 81 product specification 1-800-255-7778 r product availability table 19 shows the packages and speed grades for spartan/xl devices. ta b l e 2 0 shows the number of user i/os available for each device/package combination. table 19: component availability chart for spartan/xl fpgas device pins 84 100 144 144 208 240 256 280 type plastic plcc plastic vqfp chip scale plastic tqfp plastic pqfp plastic pqfp plastic bga chip scale code pc84 vq100 cs144 tq144 pq208 pq240 bg256 cs280 xcs05 -3cc, i------ -4cc------ xcs10 -3cc, i-c---- -4cc-c---- xcs20 -3 - c - c, i c, i - - - -4-c-cc- - - xcs30 -3 - c - c, i c, i c c - -4-c-cccc- xcs40 -3----c, icc- -4----ccc- xcs05xl -4cc, i------ -5cc------ xcs10xl -4cc, icc---- -5cccc ---- xcs20xl -4 - c, i c c, i c, i - - - -5- cccc - - - xcs30xl -4 - c - c, i c, i c c c -5- c - ccccc xcs40xl -4----c, iccc -5---- cccc 8/15/00 notes: 1. c = commercial t j = 0 to +85 c 2. i = industrial t j = ? 40 c to +100 c table 20: user i/o chart for spartan/xl fpgas device max i/o package type pc84 vq100 cs144 tq144 pq208 pq240 bg256 cs280 xcs05806177------ xcs101126177-112---- xcs20 160 - 77 - 113 160 - - - xcs30 192 - 77 - 113 169 192 192 - xcs40224----169192205- xcs05xl806177------ xcs10xl1126177112112---- xcs20xl 160 - 77 113 113 160 - - - xcs30xl 192 - 77 - 113 169 192 192 192 xcs40xl224----169192205224 5/19/99
spartan and spartan-xl families field programmable gate arrays 82 www.xilinx.com ds060 (v1.6) september 19, 2001 1-800-255-7778 product specification r ordering information revision history the following table shows the revision history for this document. date version description 11/20/98 1.3 added spartan-xl specs and power down 01/06/99 1.4 all spartan-xl -4 specs designated preliminary with no changes 03/02/00 1.5 added cs package, updated spartan-xl specs to final 09/19/01 1.6 reformatted, updated power specs, clarified configuration information. removed t sol soldering information from absolute maximum ratings table. changed figure 26 : slave serial mode characteristics: t cch , t ccl from 45 to 40 ns. changed master mode configuration switching characteristics: t cclk min. from 80 to 100 ns. added total dist. ram bits to table 1 ; added start-up , page 36 characteristics. xcs20xl-4 pq208c example: temperature range c = commercial (t j = 0 to +85 o c) i = industrial (t j = ? 40 o c to +100 o c) number of pins device type speed grade -3 -4 -5 bg = ball grid array pc = plastic lead chip carrier pq = plastic quad flat pack vq = very thin quad flat pack tq = thin quad flat pack cs = chip scale package type


▲Up To Search▲   

 
Price & Availability of XCS30-4CS100I

All Rights Reserved © IC-ON-LINE 2003 - 2022  

[Add Bookmark] [Contact Us] [Link exchange] [Privacy policy]
Mirror Sites :  [www.datasheet.hk]   [www.maxim4u.com]  [www.ic-on-line.cn] [www.ic-on-line.com] [www.ic-on-line.net] [www.alldatasheet.com.cn] [www.gdcy.com]  [www.gdcy.net]


 . . . . .
  We use cookies to deliver the best possible web experience and assist with our advertising efforts. By continuing to use this site, you consent to the use of cookies. For more information on cookies, please take a look at our Privacy Policy. X